<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: If Smalltalk can Squeak, why can&#8217;t Ruby Rumble?</title>
	<atom:link href="http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/feed/" rel="self" type="application/rss+xml" />
	<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/</link>
	<description>Temporary Exile</description>
	<pubDate>Thu, 16 Oct 2008 01:49:03 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
		<item>
		<title>By: Raf</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-27937</link>
		<dc:creator>Raf</dc:creator>
		<pubDate>Wed, 05 Mar 2008 02:58:34 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-27937</guid>
		<description>I think the difference between Ruby on Rails and Smalltalk is the same as between earning $50/h and being unemployed with joyful Seaside :).

Raf</description>
		<content:encoded><![CDATA[<p>I think the difference between Ruby on Rails and Smalltalk is the same as between earning $50/h and being unemployed with joyful Seaside :).</p>
<p>Raf</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Göran Krampe</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-12108</link>
		<dc:creator>Göran Krampe</dc:creator>
		<pubDate>Fri, 10 Aug 2007 09:48:04 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-12108</guid>
		<description>Being a Squeaker take my words with a grain of salt - I haven't used Ruby but follow it closely.

IMHO the clearly easiest path here is to actually move over to the Smalltalk world. I have yet to see the really clear advantages of Ruby over Smalltalk but can point out a whole bunch of things the other way around. And a lot of people have made this journey - for example Avi Bryant - the creator of Seaside.

Having said that :) - another possibility is to actually write a Ruby to Squeak bytecode compiler - in Squeak. Not sure if someone is doing this, I am aware of other interesting efforts in this grayzone - but not that particular one.

I know that the Ruby syntax/grammar is a complicated thing - but you would get TONS of stuff for free this way. Just a freaky idea.</description>
		<content:encoded><![CDATA[<p>Being a Squeaker take my words with a grain of salt - I haven&#8217;t used Ruby but follow it closely.</p>
<p>IMHO the clearly easiest path here is to actually move over to the Smalltalk world. I have yet to see the really clear advantages of Ruby over Smalltalk but can point out a whole bunch of things the other way around. And a lot of people have made this journey - for example Avi Bryant - the creator of Seaside.</p>
<p>Having said that <img src='http://yonkeltron.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> - another possibility is to actually write a Ruby to Squeak bytecode compiler - in Squeak. Not sure if someone is doing this, I am aware of other interesting efforts in this grayzone - but not that particular one.</p>
<p>I know that the Ruby syntax/grammar is a complicated thing - but you would get TONS of stuff for free this way. Just a freaky idea.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Curt Hibbs</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5150</link>
		<dc:creator>Curt Hibbs</dc:creator>
		<pubDate>Tue, 15 May 2007 18:36:52 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5150</guid>
		<description>I am one of the founders of the FreeRIDE project (that Ruby IDE "that noone uses"), and I can tell you that the speed of Ruby is not an issue. Performance is, in fact, fast enough to write an IDE -- even an that has a completely decoupled internal architecture (http://freeride.rubyforge.org/wiki/wiki.pl?Databus)!

Back when Rich Kilmer and I started FreeRIDE (2001), there were no IDEs for Ruby. Now that are many commercial and open source choices, most of which surpass FreeRIDE in functionality (which never garnered enough developer interest to build an active community).</description>
		<content:encoded><![CDATA[<p>I am one of the founders of the FreeRIDE project (that Ruby IDE &#8220;that noone uses&#8221;), and I can tell you that the speed of Ruby is not an issue. Performance is, in fact, fast enough to write an IDE &#8212; even an that has a completely decoupled internal architecture (http://freeride.rubyforge.org/wiki/wiki.pl?Databus)!</p>
<p>Back when Rich Kilmer and I started FreeRIDE (2001), there were no IDEs for Ruby. Now that are many commercial and open source choices, most of which surpass FreeRIDE in functionality (which never garnered enough developer interest to build an active community).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Antonio</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5139</link>
		<dc:creator>Antonio</dc:creator>
		<pubDate>Tue, 15 May 2007 13:26:25 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5139</guid>
		<description>I personally heavily disliked the GUI-only nature of coding Smalltalk. While having workspaces and such is occasionally _nice_ -- especially for debugging -- the fact that I can't just drop out and edit in vim or what have you was very very annoying to me. That said, I think there's definitely room for a tool like that in the Ruby community. Definitely worth looking into.

Re: Matz not caring about speed -- he's always said he's more of a language creator than a good implementor. There are several projects to speed up Ruby right now, including Yarv, Rubinius, JRuby, and IronRuby (though the latter two obviously have other goals, as well). People in the Ruby community hardly hate C (Hpricot, for example, has a C component, and it's rather widely used), and while Rails abstracts away SQL, it still lets you use it directly when needed, and the developers have said more than once that you should when it becomes necessary. So we'll label that `fud'.

Re: Ruby written in Ruby -- have a look at Rubinius. The goal of the project is to get to exactly that.</description>
		<content:encoded><![CDATA[<p>I personally heavily disliked the GUI-only nature of coding Smalltalk. While having workspaces and such is occasionally _nice_ &#8212; especially for debugging &#8212; the fact that I can&#8217;t just drop out and edit in vim or what have you was very very annoying to me. That said, I think there&#8217;s definitely room for a tool like that in the Ruby community. Definitely worth looking into.</p>
<p>Re: Matz not caring about speed &#8212; he&#8217;s always said he&#8217;s more of a language creator than a good implementor. There are several projects to speed up Ruby right now, including Yarv, Rubinius, JRuby, and IronRuby (though the latter two obviously have other goals, as well). People in the Ruby community hardly hate C (Hpricot, for example, has a C component, and it&#8217;s rather widely used), and while Rails abstracts away SQL, it still lets you use it directly when needed, and the developers have said more than once that you should when it becomes necessary. So we&#8217;ll label that `fud&#8217;.</p>
<p>Re: Ruby written in Ruby &#8212; have a look at Rubinius. The goal of the project is to get to exactly that.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alan Lovejoy</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5113</link>
		<dc:creator>Alan Lovejoy</dc:creator>
		<pubDate>Tue, 15 May 2007 05:47:32 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5113</guid>
		<description>If you want a Smalltalk workspace, the easiest way to get one is to use Smalltalk.  "Do the simplest thing that could possibly work."</description>
		<content:encoded><![CDATA[<p>If you want a Smalltalk workspace, the easiest way to get one is to use Smalltalk.  &#8220;Do the simplest thing that could possibly work.&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Miller</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5100</link>
		<dc:creator>Mark Miller</dc:creator>
		<pubDate>Mon, 14 May 2007 23:35:22 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5100</guid>
		<description>I enjoyed your story. I've been in the process of relearning Smalltalk after a long absence from it. The temptation to learn Ruby and Rails has been there, but more from a financial perspective (a bit easier to find work with it). I dabbled in Ruby a bit last year. Since I found out about Seaside, I've been a bit reticent to learn RoR on technical grounds. I have this sneaking suspicion that I'll use it for a while, get something out of it, but eventually discover that it's "VB for the internet", or something. It sounds like you've had that experience already.

A possibility for your "Rumble" environment would be to make the source code for Ruby objects/methods that are implemented as primitives (in C) browsable, but non-active. Meaning that the language in which everything is technically defined is Ruby, but some of the code would be immutable. This way at least everybody could see how everything is implemented in a consistent language. Conceptually, a C-to-Ruby translator would be a reliable way to accomplish this.

Or, if you want to go all the way, you could implement what Squeak has, which is complete source code in Smalltalk, down to the VM level (the kernel build process translates it to C, which is then compiled). Anyone for a version of Ruby written in Ruby?</description>
		<content:encoded><![CDATA[<p>I enjoyed your story. I&#8217;ve been in the process of relearning Smalltalk after a long absence from it. The temptation to learn Ruby and Rails has been there, but more from a financial perspective (a bit easier to find work with it). I dabbled in Ruby a bit last year. Since I found out about Seaside, I&#8217;ve been a bit reticent to learn RoR on technical grounds. I have this sneaking suspicion that I&#8217;ll use it for a while, get something out of it, but eventually discover that it&#8217;s &#8220;VB for the internet&#8221;, or something. It sounds like you&#8217;ve had that experience already.</p>
<p>A possibility for your &#8220;Rumble&#8221; environment would be to make the source code for Ruby objects/methods that are implemented as primitives (in C) browsable, but non-active. Meaning that the language in which everything is technically defined is Ruby, but some of the code would be immutable. This way at least everybody could see how everything is implemented in a consistent language. Conceptually, a C-to-Ruby translator would be a reliable way to accomplish this.</p>
<p>Or, if you want to go all the way, you could implement what Squeak has, which is complete source code in Smalltalk, down to the VM level (the kernel build process translates it to C, which is then compiled). Anyone for a version of Ruby written in Ruby?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Lyons</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5089</link>
		<dc:creator>Daniel Lyons</dc:creator>
		<pubDate>Mon, 14 May 2007 19:18:44 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5089</guid>
		<description>I agree with you completely. I have basically two questions:

 - Should it be graphical in nature, like Squeak, or essentially textual, like Emacs? I could make a strong argument either way.
 - Do you have any time to work on such a project? ;)

I would definitely throw my hat in the ring on such a project.</description>
		<content:encoded><![CDATA[<p>I agree with you completely. I have basically two questions:</p>
<p> - Should it be graphical in nature, like Squeak, or essentially textual, like Emacs? I could make a strong argument either way.<br />
 - Do you have any time to work on such a project? <img src='http://yonkeltron.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
I would definitely throw my hat in the ring on such a project.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John Deere</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5077</link>
		<dc:creator>John Deere</dc:creator>
		<pubDate>Mon, 14 May 2007 16:19:26 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5077</guid>
		<description>I think the problem is that Ruby is excruciatingly slow. There is supposed to be an ide written in it, but I think it is just so awful that noone uses it. Ruby has no problem strangling your CPU to the tune of 98%  while simple scripts are running. You want to write and IDE which does all the introspection etc on the fly a la SmallTalk? 

It would be possible, maybe if the Ruby crowd figures out this speed issue. I know a lot of people are going to get their panties in a bunch on this.. but the truth is, Ruby is just extremely slow. The denial machine only helps aggravate the problem, and the kind of crowd attracted to Ruby just doesn't have the technical knowhow to put together something better than Matz' interpreter. 

Lua offers everything Ruby offers in terms of dynamic langugages and it is less than 500kb. So all this whining that Ruby is slow because it is just "so special" is just BS excuses from incompetent implementers.

Matz doesn't give a shit anymore, Ruby community's been taken over by Retards from PHP and inflammtory figures like DHH and his 12 disciples who think their feces don't stink. This is a crowd which prides itself in not dealing with the "complexity of SQL". They are mortal enemies of C and anything low level. They have disillusioned a lot of good developers away from the community and right now it is a bunch of gravy train riders enjoying the ride while it lasts.

How can you expect a decent and fast interpreter/compiler (a prerequisite for this "rumble" you speak of) to come out of this crowd? 

not gonna happen.</description>
		<content:encoded><![CDATA[<p>I think the problem is that Ruby is excruciatingly slow. There is supposed to be an ide written in it, but I think it is just so awful that noone uses it. Ruby has no problem strangling your CPU to the tune of 98%  while simple scripts are running. You want to write and IDE which does all the introspection etc on the fly a la SmallTalk? </p>
<p>It would be possible, maybe if the Ruby crowd figures out this speed issue. I know a lot of people are going to get their panties in a bunch on this.. but the truth is, Ruby is just extremely slow. The denial machine only helps aggravate the problem, and the kind of crowd attracted to Ruby just doesn&#8217;t have the technical knowhow to put together something better than Matz&#8217; interpreter. </p>
<p>Lua offers everything Ruby offers in terms of dynamic langugages and it is less than 500kb. So all this whining that Ruby is slow because it is just &#8220;so special&#8221; is just BS excuses from incompetent implementers.</p>
<p>Matz doesn&#8217;t give a shit anymore, Ruby community&#8217;s been taken over by Retards from PHP and inflammtory figures like DHH and his 12 disciples who think their feces don&#8217;t stink. This is a crowd which prides itself in not dealing with the &#8220;complexity of SQL&#8221;. They are mortal enemies of C and anything low level. They have disillusioned a lot of good developers away from the community and right now it is a bunch of gravy train riders enjoying the ride while it lasts.</p>
<p>How can you expect a decent and fast interpreter/compiler (a prerequisite for this &#8220;rumble&#8221; you speak of) to come out of this crowd? </p>
<p>not gonna happen.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Yoni Rabkin</title>
		<link>http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5050</link>
		<dc:creator>Yoni Rabkin</dc:creator>
		<pubDate>Mon, 14 May 2007 07:24:46 +0000</pubDate>
		<guid isPermaLink="false">http://yonkeltron.com/2007/05/13/if-smalltalk-can-squeak-why-cant-ruby-rumble/#comment-5050</guid>
		<description>I'll be mind-numbingly stereotypical and say that the above sounds to
me like you want a Lisp-machine. Try seeing this video http://www.lemonodor.com/archives/misc-gems/lispm.mov.gz and have a look at this screenshot: http://upload.wikimedia.org/wikipedia/en/f/f6/Debugger.gif. I believe that these machines still represent the essence of your post. Take your idea; to have an application environment which is written in and for the language you use, and everything that language represents. Now take that idea to its logical extreme: the entire machine, through the keyboard, OS, environment and the hardware itself have been designed with/for/around the language; this is a Lisp machine. I think that by studying Lisp machines, you can see that your idea is not only correct, but it has been taken to its logical conclusion (no need to re-invent it). One more thing though that you did not mention. One very important point that people miss is that in order to have truely powerful introspection, you need to actually launch the application out of the same environment you develop. For example, you start a Lisp image in SBCL, connect to it with a tool like SLIME, disconnect and launch that very same image as the application. Then you can reconnect and change something in the live image or even stay connected permanently as the application lives. An environment which is designed to let you do that forces upon itself a discipline of transparency and introspection that the edit/make/run loop cannot support.</description>
		<content:encoded><![CDATA[<p>I&#8217;ll be mind-numbingly stereotypical and say that the above sounds to<br />
me like you want a Lisp-machine. Try seeing this video <a href="http://www.lemonodor.com/archives/misc-gems/lispm.mov.gz" rel="nofollow">http://www.lemonodor.com/archives/misc-gems/lispm.mov.gz</a> and have a look at this screenshot: <a href="http://upload.wikimedia.org/wikipedia/en/f/f6/Debugger.gif" rel="nofollow">http://upload.wikimedia.org/wikipedia/en/f/f6/Debugger.gif</a>. I believe that these machines still represent the essence of your post. Take your idea; to have an application environment which is written in and for the language you use, and everything that language represents. Now take that idea to its logical extreme: the entire machine, through the keyboard, OS, environment and the hardware itself have been designed with/for/around the language; this is a Lisp machine. I think that by studying Lisp machines, you can see that your idea is not only correct, but it has been taken to its logical conclusion (no need to re-invent it). One more thing though that you did not mention. One very important point that people miss is that in order to have truely powerful introspection, you need to actually launch the application out of the same environment you develop. For example, you start a Lisp image in SBCL, connect to it with a tool like SLIME, disconnect and launch that very same image as the application. Then you can reconnect and change something in the live image or even stay connected permanently as the application lives. An environment which is designed to let you do that forces upon itself a discipline of transparency and introspection that the edit/make/run loop cannot support.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.622 seconds -->
