<?xml version="1.0" encoding="UTF-8"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
  <title>Nick Sieger: RubyConf: Matz Roundtable</title>
  <id>tag:blog.nicksieger.com,2005:Typo</id>
  <generator uri="http://www.typosphere.org" version="4.0">Typo</generator>
  <link rel="self" type="application/atom+xml" href="http://blog.nicksieger.com/xml/atom10/article/83/feed.xml"/>
  <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2006/10/21/rubyconf-matz-roundtable"/>
  <updated>2007-08-31T16:25:36+00:00</updated>
  <entry>
    <author>
      <name>Anand</name>
    </author>
    <id>urn:uuid:f46b7121-d00b-43c7-9e6b-2cf7ef9bd994</id>
    <published>2007-01-25T15:52:23+00:00</published>
    <updated>2007-08-31T16:25:36+00:00</updated>
    <title>Comment on RubyConf: Matz Roundtable by Anand</title>
    <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2006/10/21/rubyconf-matz-roundtable#comment-200"/>
    <content type="html">&lt;p&gt;Amazing&amp;#8230;&amp;#8230;&amp;#8230;..&lt;/p&gt;</content>
  </entry>
  <entry>
    <author>
      <name>Jon Dahl</name>
    </author>
    <id>urn:uuid:9127fc87-9be8-4217-984b-3e5c17c09d04</id>
    <published>2006-10-21T20:15:11+00:00</published>
    <updated>2007-08-31T16:25:36+00:00</updated>
    <title>Comment on RubyConf: Matz Roundtable by Jon Dahl</title>
    <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2006/10/21/rubyconf-matz-roundtable#comment-90"/>
    <content type="html">&lt;p&gt;This is great - thanks for taking the time to blog these sessions.&lt;/p&gt;</content>
  </entry>
  <entry>
    <author>
      <name>Nick Sieger</name>
    </author>
    <id>urn:uuid:4056b0d7-7b02-4fae-b5b7-536b0cfa5b76</id>
    <published>2006-10-21T02:59:38+00:00</published>
    <updated>2007-08-31T16:25:36+00:00</updated>
    <title>RubyConf: Matz Roundtable</title>
    <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2006/10/21/rubyconf-matz-roundtable"/>
    <category term="rubyconf" scheme="http://blog.nicksieger.com/articles/tag/rubyconf"/>
    <category term="rubyconf2006" scheme="http://blog.nicksieger.com/articles/tag/rubyconf2006"/>
    <content type="html">&lt;p&gt;&lt;em&gt;An annual tradition at RubyConf is the &amp;#8220;Roundtable&amp;#8221;, where any member of the audience can come up and ask Matz any question.  Transcript follows with partial paraphrasing.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. Will Ruby ever get the features of &lt;code&gt;evil&lt;/code&gt; built in?  Will we get &lt;code&gt;become&lt;/code&gt;?&lt;/em&gt;  No.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. If Symbol is a &amp;#8220;frozen&amp;#8221; String, why do we need Symbol?&lt;/em&gt; I don&amp;#8217;t have a complete answer to that question &amp;#8211; following tradition.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. What&amp;#8217;s the most unusual architecture Ruby has ever run on?&lt;/em&gt;  Ruby&amp;#8230;I can&amp;#8217;t think of one&amp;#8230;JRuby?  Some guys ran compiled Ruby on the NECS supercomputer.  [From the audience] Symbian.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. As Ruby gains acceptance, it becomes more resistance to change.  How do you keep agile while gaining momentum?&lt;/em&gt;  We have forked off 1.8, so if you want stable, use Ruby 1.8 forever.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. The array patch &amp;#8211; is there any chance of a backport for those of us who want 1.8 forever?&lt;/em&gt; Could be, but the current patch has a bug in 1.9.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. Why isn&amp;#8217;t YARV the only VM for 1.9? [Comment about register-based VM]&lt;/em&gt;  I&amp;#8217;m not sure whether stack-based or register-based VMs are better&amp;#8230;[THAT GUY!]&amp;#8230;[Given the hook]&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. It seems like momentum is based on strong metaprogramming facilities.  With 1.9 there are more user-friendly features.  Will code eventually be data, or are we just patching on techniques on a tool that is being used more heavily?&lt;/em&gt;  An extreme way to do metaprogramming is to use Lisp, but for practicality we have to start somewhere.   I&amp;#8217;m not sure that s-expressions are the way to go.  We&amp;#8217;re not going to have macros.  It will remain similar to what we have in 1.9.  &lt;em&gt;The ability to serialize code would be really powerful &amp;#8211; will that happen?&lt;/em&gt;  Disclosing internal state is tricky because it changes.  It could be a platform-specific feature.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. Recently for 1.9, there was a patch for Array and String to be in the object header.  Was this profiled?  It seems like it would be an incredible performance problem.&lt;/em&gt;  It was done for slowness of malloc and gc.  In some cases it could run slower, but it benchmarked at about 5% faster.  It should be tested thoroughly.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. Ruby 2.0 will not have green threads or continuations, correct?  Are there specific reasons for that decision?&lt;/em&gt;  It is difficult to implement green threads in YARV.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. People want to see development move quickly, but may not be able to contribute code.  Can you suggest ways for those programmers to contribute?&lt;/em&gt;  Submit patches to the list.  What is the obstacle to joining us?  [Question restated]  Submit testing, submit documentation.  Contribute to RubyCentral?  (looks at Chad Fowler)&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. The CSV library is useful, but slow.  Can we see FasterCSV in stdlib?&lt;/em&gt;  It&amp;#8217;s ok to replace the csv library with FasterCSV, as long as the compatibility issues are resolved.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. I want to thank you because I love writing in Ruby every day.  I tried to write Python first.  Recently an unrelated upgrade broke my Python apps.  Will we be able to manage multiple versions of Ruby?&lt;/em&gt;  You&amp;#8217;ll have to have two versions, 1.8, and future ones.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. What would you say is the most important feature of your personality that has given you success?&lt;/em&gt; Endurance?  &lt;em&gt;Can you elaborate?&lt;/em&gt;  It&amp;#8217;s easy to design a language, many of them disappear in a year or two.  I&amp;#8217;ve been working on Ruby for 13 years.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. I wanted to see in IRB how the class was implemented at runtime.  (He means an uneval feature)&lt;/em&gt;  [Audience member (Eric Hodel?) mentioned ParseTree]&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. If there wasn&amp;#8217;t Ruby, what would you be programming in?&lt;/em&gt; Some language of my own not named Ruby.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. Do you still look at RCRchive?&lt;/em&gt; Yes.  I&amp;#8217;ll talk about it in the keynote.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. I would like a feature abstraction that would allow Ruby to fork itself rather than actually forking.  Can you see this added to core?&lt;/em&gt;  We have to define the behavior of that feature.  We have to have a good name for the method.  Then there will be no problem to add it to core.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. Why do you need to bind methods to an object of the same original module?&lt;/em&gt;  If you bind a method taken from String class to Array class, it will crash, and we need to prevent it.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Q. What do you think of Ruby.NET?&lt;/em&gt;  I&amp;#8217;m pretty open to new implementations.  &lt;em&gt;Should there be a standard (language specs) that other projects should follow?&lt;/em&gt;  &lt;a href="http://headius.blogspot.com"&gt;Charles&lt;/a&gt; started work for a &lt;a href="http://www.headius.com/rubyspec/"&gt;written 1.8 spec&lt;/a&gt;, and I&amp;#8217;ll help him with that if I have time.&lt;/p&gt;</content>
  </entry>
</feed>
