BECAUSE YOU CAN ALWAYS CALL C CODE TO DO IT RIGHT. AM I RITE?
I AM
Name:
Anonymous2006-05-15 12:55
You are right, so am I.
Name:
Anonymous2006-05-15 12:56
Oh yeah, and you can still do everything in Ruby, just rewrite the C code!
Name:
Anonymous2006-05-15 16:19
pfft. You can do anything with Active Server Pages also ! Just write a COM component in C++ and call it from the ASP page !!!
Name:
Anonymous2006-05-15 16:23
Ruby got me laid.
True story
Name:
Anonymous2006-05-15 19:08
>>1
Yes you're right, I've cleaned a lot of C libraries where I work, wrote a few interfaces and changed some programs from C to Ruby. Writing 20 lines instead of 200 is a REAL benefit. Of course if you're still in high-school, you can't understand what's happening in the real world.
Name:
Anonymous2006-05-15 20:17
You can do everything with ruby as long as ruby is a good match for your problem.
Not problems which need to be done a million times a second.
Name:
Anonymous2006-05-15 23:24
TRY WRITING HARD DRIVE FIRMWARE CODE IN RUBY
TRY WRITING BIOS CODE IN RUBY
TRY WRITING KERNEL SCHEDULER CODE IN RUBY
TRY WRITING MEDICAL DEVICE SYSTEM SOFTWARE IN RUBY
TRY WRITING NUCLEAR WEAPONS SYSTEMS MONITIORING PROGRAMS IN RUBY
RUBY FAILS
>>10
OK, done. I embedded a Ruby interpreter and a small distribution of Linux in the BIOS. No problem, eh?
Name:
Anonymous2006-05-16 9:46
Here's a better one try writing a 3D game in Ruby, once you hit 100+ objects you find you need to do iteration in C. Slowly more and more needs to be in C til you are left ruby for the AI. Then you start noticing you can only handle 10 relatively smart baddies because the ruby ai is slowing everything down.
>>13, are you saying that it is impossible to use Ruby for a 3D game?
Name:
Anonymous2006-05-16 11:06
>>15 try reading what >>13 actually said. He didnt say it's impossible, he just your resulting game will be shit.
Name:
Anonymous2006-05-16 12:08
>>16
He said he would use C for it, I guess that would turn it into shit. Some of us here have access to alien computers that can process every computation that has ever been computed in the human history in the blink of an eye (actually shorter).
Name:
Anonymous2006-05-16 16:33
According to this board, every language sucks.
How about more objectivity re: programming languages because not every language is adept for any given situation.
>>26
More like 5 times less code. Think about all the data structure support code.
Also, VROOM VROOOOM!
Name:
Anonymous2006-05-18 5:34
>>27 When that's applied to large calculations, OSs, games, etc, having something running 5 times slower is a serious concern. The study of algorithm complexity and time consumption is an important part of modern computer science, and for good reasons.
Name:
Anonymous2006-05-18 7:03
>>30
You're stupid. Algorithms are language independent; an O(n) calculation in C will be O(n) in Ruby. Yes Ruby is slower but don't make up shit about complexity if you don't know what you're talking about.
>>31 Of course they have the same complexity, but something's significantly slower (5x slower, for example), on the larger scale it will have consequences on the enduser. >>30 was not arguing they had different complexity, it's obvious that if someone says something takes 5 times as long, the complexity for both methods are the same.
Name:
Anonymous2006-05-19 3:45
>>33
Depends. You won't make a 3D game or a RDBMS in a scripting language, but who cares if a GUI application, a DB application, a system script, etc. run slower when you can't notice/don't need it faster? Even if you have to buy more powerful servers for web applications, server costs are way below development costs.
Name:
Anonymous2006-05-19 5:39
>>34 I agree, I wasn't trying to say that having things run a tiny bit faster is always the top priority, but just that we can't say "Hurr my computer does millions and millions of operations a second so it doesn't matter how long programs take to run" to everything.
Name:
Anonymous2006-05-19 6:14
but who cares if a GUI application
I take you haven't used FreeRIDE. :/
I like Ruby a lot, but face it: Ruby makes a sloth look fast. Speed is one of my three biggest issues with the language, and although YARV is yielding real benefits in most areas, Ruby looks like it'll remain a slow language for the foreseeable future.
It'd be nice if I didn't need to consider execution time when choosing which language to use.
Name:
Anonymous2006-06-28 3:47
Ruby 1.9/2.0 will feature YARV and a significant speed increase.
But if you're writing a 3D game, please please don't use ruby.
Name:
Anonymous2006-06-28 7:01
Ruby is Smalltalk for dummies.
Name:
Anonymous2006-06-28 7:16
Smalltalk is Lisp for dummies.
Name:
Anonymous2006-06-28 10:48
Lisp is for dummies.
Name:
Anonymous2006-06-28 12:30
6502 assembly is 6502 assembly for smart people
Name:
Anonymous2006-06-28 16:13 (sage)
Word if for writing words and shit
Name:
Anonymous2006-06-29 0:43 (sage)
Stop complaining about other people's languages and just WRITE THE DAMN CODE
Name:
Anonymous2006-06-29 1:12
Lisp is Speech for dummies
Name:
Anonymous2006-06-29 1:18
Has Ruby for webhosting even been real-world tested on large high-traffic websites?
I know that Perl and PHP have. Perl runs high-traffic sights such as slashdot.org and livejournal.com. I know that digg.com had it's scaling problems with MySQL moreso than PHP. Are there any real-world examples of large high-volume sites like these that run on Ruby (doesn't have to be Ruby on Rails)? Preferably sites that aren't mostly cached/static pages (dynamically updated content that is always being updated).
Name:
Anonymous2006-06-29 1:40
Has Ruby for webhosting even been real-world tested on large high-traffic websites?
Apparently PennyArcade now uses Ruby on Rails. Not exactly a ringing endorsement, mind.
Preferably sites that aren't mostly cached/static pages
If you aren't an idiot, you'll be caching as much as possible, no matter what the language. Static pages are even better. This is one particular pet peeve I have about a lot of PHP "programmers".
Name:
Anonymous2006-06-29 10:27
Yea. I know that you want to cache as much as possible. But with sites like digg.com the content is changing so rapidly that it's not like caching it will do too much since there will probably be an update in the next minute or two. And even on top of that, you can get RSS feeds for a particular search of the news items. I'm not sure how they implement that behind the scenes, but a lot of these stuff is dynamically created. Sure it's cached or static to some degree, but by questioning was more along the lines of Ruby being able to handle sites where there is lots of content that has to be dynamically created rather than stored in a static/cached page. I'm just trying to get a feel for how well Ruby would handle being under a heavy load of actual script executions, rather than just serving up pre-packaged pages.
I mean blogs are easy. You can generate all of the blog pages statically if you want to (probably the best way), and just update them when you post new content. But let's face it, most people's blogs won't get enough traffic for that to be of any consequence anyways. Most people's blogs could handle being 100% dynamic for the 2 hits a week that they get.
it's not like caching it will do too much since there will probably be an update in the next minute or two.
I disagree. Considering the type of traffic that digg.com must be getting, caching would hugely benefit it. The overhead of a dynamic page is so high that all it takes is two hits instead of one to make caching a win. And you can bet digg serves more than two pages between updates.
Now, I've never used Ruby to serve webpages, but if you use FastCGI and a dose of static HTML, I'd be very surprised if you couldn't make a heavily-loaded site, unless it's something like Amazon's shopping carts. I'll also point out that Ruby and PHP are comparable for speed; if you want a popular fast scripting language, you should be looking at Python or Perl.
I realize that caching still would help out a lot. I just phrased that poorly. What I meant is that the scripting engine is still racking up CPU cycles (from the sheer amount of updates, so the efficiency of the engine and its performance are being put to the test. It's not like a page that is updated infrequently or just weekly where static pages/cached pages basically make it so that the script is rarely hitting up the CPU and it's mostly just disk reads.
What is the difference between CGI/FastCGI? I've only ever used PHP through mod_perl for serving up web pages. While I'm at it, what is the difference between running a script through CGI verses a language specific module (e.g. mod_perl, mod_python, mod_php, etc)? I understand that to some extent it's supposed to be optimized, but in what way and to what extent?
Name:
Anonymous2006-06-30 1:08
To oversimplify things a bit, mod_perl/php/python eliminate the overhead of loading and forking a new process each time a request is made. Relative to what the process itself does, this overhead is usually gigantic.
FastCGI does the same thing, except instead of embedding an interpreter in the httpd daemon, it spawns a seperate persistent process that doesn't terminate. The same process sits there, accepting requests and returning data.
Performance-wise, there isn't a big difference between mod_* and FastCGI, but a FastCGI process won't affect the stability of the httpd daemon (particularly useful if you're not using the MPM prefork), and it scales better (distribute processes across multiple machines). The downside is that things like mod_perl give you incredible access to Apache's innards.
Name:
Anonymous2006-06-30 1:10
I forgot to mention: CGI treats your script like a normal external program, so you end up spawning a new process everytime someone hits a URL that references said program. This is horribly slow.
Does that mean that each httpd gets its own persistent interpreter process? Or is there one for all httpd processes. If there is one for all processes, then doesn't that add wait time as the a request coming in while another request is being processed will have to wait. Or does the persistent interpreter process spawn it's own threads/child processes?
Name:
Anonymous2006-06-30 5:17
For the mod_*, it's embedded in the daemon, so there's one instance per httpd process. Of course, with a modern VM and copy-on-write, that's not such a big deal.
For FastCGI, it's a bit more complicated. The way it's normally used, you can have any number of httpd processes talking to any number of FastCGI processes. You can have one or several httpd process(es) talking to one or several FastCGI process(es). If there aren't enough FastCGI processes to fulfill demand, more are spawned, and if the demand is low, excess processes expire.
My good friend had just begun his stint as a JET. He had been in Japan for only two weeks when he was introduced to all the teachers at the school in which he was to begin teaching. In front of the teachers he was asked by the principal one of the standard questions gaijin are asked - "Can you eat Japanese food?"
"Oh yes, it is oishii!" he replied.
"And what is your favourite Japanese food?" the principal asked.
A small amount of mental turmoil set in. What was the name for that sweet red bean paste that he had been eating for the last two weeks? Something sounding like manju or anko? Unable to quite remember, his brain made the terrible decision to combine those two innocent foodstuffs.
"Manko," he said.
Name:
Anonymous2008-08-12 12:16
Lisp is Sepples for dummies.
Name:
Anonymous2008-08-12 12:27
>>80
I bow my head in despair as your friend brings shame to my race. Also, My good friend had just begun his stink as a JET
fix'd.
That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!That was VIP quality!
Bringing /prog/ back to its people
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy