--00151747637a399a1604bbf401e9 Content-Type: text/plain; charset=ISO-8859-1 No, the Ruby language's specification is laboriously written by hand: http://www.ipa.go.jp/osc/english/ruby/ruby_draft_specification_agreement.html A language specification contains much more than just the grammar, it also contains a formal description of the behavior of the language (i.e. its semantics) as well. Personally I find the RubySpec code examples much more useful than a formal description of the language. On Fri, Mar 23, 2012 at 6:51 PM, Carter Cheng <cartercheng / gmail.com> wrote: > Hi Tony, > > It would seem to me that both are needed since a programmer would have > difficulty referring to a non-text specification. Is the specification > autogenerated from the context free grammar? I am rather unfamiliar with > the notion of an executable spec. > > Regards, > > Carter. > > > On Sat, Mar 24, 2012 at 9:30 AM, Tony Arcieri <tony.arcieri / gmail.com>wrote: > >> It's impossible to know if a language conforms to an on-paper >> specification, because an on-paper specification is on-paper and therefore >> can't provide any way to check that a given implementation matches what has >> been written down. >> >> In order to do that sort of automatic checking, you need an executable >> specification of the language, which is what RubySpec provides: >> >> http://rubyspec.org/ >> >> In my opinion, this makes RubySpec a lot more useful than an on-paper >> specification, which relies on end user feedback as they discover parts of >> an implementation that don't match what's written down. An executable >> specification can automatically tell you if you conform to it on a whim. >> >> >> On Fri, Mar 23, 2012 at 6:20 PM, Carter Cheng <cartercheng / gmail.com>wrote: >> >>> Hello, >>> >>> I have been wondering if there has been some updates since the >>> publication of the book by Flanagan and Matsumoto? I am curious how much I >>> can expect JRuby, CRuby etc. to still conform to this description? Is there >>> some sort of specification out there (similar to the Self specification or >>> the Scheme rnrs)? >>> >>> >>> >>> Regards, >>> >>> Carter. >>> >> >> >> >> -- >> Tony Arcieri >> >> > -- Tony Arcieri --00151747637a399a1604bbf401e9 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable No, the Ruby language's specification is laboriously written by hand:<div><br></div><div>http://www.ipa.go.jp/osc/english/ruby/ruby_draft_specification_agreement.html</div> <div><br></div><div>A language specification contains much more than just the grammar, it also contains a formal description of the behavior of the language (i.e. its semantics) as well.</div><div><br></div><div>Personally I find the RubySpec code examples much more useful than a formal description of the language.</div> <div><br><div class="gmail_quote">On Fri, Mar 23, 2012 at 6:51 PM, Carterheng <span dir="ltr"><cartercheng / gmail.com></span> wrote:<br><blockquote class="gmail_quote"tyle="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> Hi Tony,<div><br></div><div>It would seem to me that both are needed since a programmer would have difficulty referring to a non-text specification. Is the specification autogenerated from the context free grammar? I am rather unfamiliar with the notion of an executable spec.</div> <div><br></div><div>Regards,</div><div><br></div><div>Carter.<div><div class="h5"><br><br><div class="gmail_quote">On Sat, Mar 24, 2012 at 9:30 AM, Tony Arcieri <span dir="ltr"><<a href="mailto:tony.arcieri / gmail.com" target="_blank">tony.arcieri / gmail.com</a>></span> wrote:<br> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">It's impossible to know if a language conforms to an on-paper specification, because an on-paper specification is on-paper and therefore can't provide any way to check that a given implementation matches what has been written down.<div> <br></div><div>In order to do that sort of automatic checking, you need an executable specification of the language, which is what RubySpec provides:</div><div><br></div><div><a href="http://rubyspec.org/" target="_blank">http://rubyspec.org/</a></div> <div><br></div><div>In my opinion, this makes RubySpec a lot more useful than an on-paper specification, which relies on end user feedback as they discover parts of an implementation that don't match what's written down. An executable specification can automatically tell you if you conform to it on a whim.<div> <div><br> <br><div class="gmail_quote">On Fri, Mar 23, 2012 at 6:20 PM, Carter Cheng <span dir="ltr"><<a href="mailto:cartercheng / gmail.com" target="_blank">cartercheng / gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div>Hello,</div><div><br></div>I have been wondering if there has been some updates since the publication of the book by Flanagan and Matsumoto? I amurious how much I can expect JRuby, CRuby etc. to still conform to this description? Is there some sort of specification out there (similar to the Self specification or the Scheme rnrs)?<div> <br></div><div><br><div><br></div><div>Regards,</div><div><br></div><div>Carter.</div></div> </blockquote></div><br><br clear="all"><div><br></div></div></div><span><font color="#888888">-- <br>Tony Arcieri<br><br> </font></span></div> </blockquote></div><br></div></div></div> </blockquote></div><br><br clear="all"><div><br></div>-- <br>Tony Arcieri<br><br> </div> --00151747637a399a1604bbf401e9--