<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto">I did pay for the standard and AFAICT there were no changes between the last draft and the issued standard. In my opinion, the standard is good as far as it went, which wasn’t too far. That’s why various Smalltalk implementations vary so much, as Christoph has found. <div><br></div><div>It can be a nontrivial task to port extensions from one dialect to another, even those derived from Squeak. Some dialects even claim they’re not even Smalltalk.<br><br><div dir="ltr"><span style="font-size: 13pt;">/————————————————————/</span><div><span style="font-size: 13pt;">For encrypted mail use jgpfersich@protonmail.com</span><div>Get a free account at ProtonMail.com</div><div>Web: https://objectnets.net and https://objectnets.org</div></div><div>https://datascilv.com https://datascilv.org</div><div><br></div></div><div dir="ltr"><br><blockquote type="cite">On Feb 10, 2020, at 13:46, Levente Uzonyi <leves@caesar.elte.hu> wrote:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><span>Hi Christoph,</span><br><span></span><br><span>My understanding is that the conclusion was that [:x] should not be valid[1].</span><br><span>In my option, it makes no sense to support a useless extremal case.</span><br><span>The BNF you posted below says that it is not valid.</span><br><span></span><br><span>But the BNF is from the ANSI standard's draft, so there's an extremely slim chance that it was changed in the actual standard. But</span><br><span>- I doubt anyone would like to pay for it to find out</span><br><span>- I'm not aware of any smalltalk implementation that would strictly follow the standard</span><br><span>- the standard is not a good standard</span><br><span></span><br><span>In my option, [|] is another extremal case that I don't think we need to support.</span><br><span>It's longer than [], and both parsers detect it the same way: the closing | of the temporary declaration is missing.</span><br><span></span><br><span>So, to sum it up, IMHO neither [:x], [:x :y] nor [|] should be supported. Parser accepts [:x] and [:x :y], which should be fixed; perhaps just a warning should be raised.</span><br><span></span><br><span></span><br><span>Levente</span><br><span></span><br><span>[1] http://forum.world.st/The-Inbox-ShoutCore-ct-69-mcz-tp5102398p5102912.html</span><br><span>On Mon, 10 Feb 2020, Thiede, Christoph wrote:</span><br><span></span><br><blockquote type="cite"><span>[Ugh, Nabble removed all my code examples again. Resend below:]</span><br></blockquote><blockquote type="cite"><span>_________________________________________________________________________________________________________________________________________________________________________________________________________________________________</span><br></blockquote><blockquote type="cite"><span>Von: Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Thiede, Christoph</span><br></blockquote><blockquote type="cite"><span>Gesendet: Montag, 10. Februar 2020 14:10 Uhr</span><br></blockquote><blockquote type="cite"><span>An: squeak-dev@lists.squeakfoundation.org</span><br></blockquote><blockquote type="cite"><span>Betreff: Re: [squeak-dev] [:x] considered improper (was Re: The Inbox: ShoutCore-ct.69.mcz)  </span><br></blockquote><blockquote type="cite"><span>Sorry for reviving this old thread ...</span><br></blockquote><blockquote type="cite"><span>This is still an open issue, isn't it?  (oh, it would be so comfortable if we had something like GitHub issues ...)</span><br></blockquote><blockquote type="cite"><span>And just one related question: According to the BNF John mentioned --</span><br></blockquote><blockquote type="cite"><span><block constructor> ::= '[' <block body> ']'</span><br></blockquote><blockquote type="cite"><span><block body> ::= [<block argument>* '|'] [<temporaries>] [<statements>]</span><br></blockquote><blockquote type="cite"><span><block argument> ::= ':' identifier</span><br></blockquote><blockquote type="cite"><span>(from the ANSI Smaltalk Standard)</span><br></blockquote><blockquote type="cite"><span> -- the following should be valid syntax as well, shouldn't it?</span><br></blockquote><blockquote type="cite"><span>[|] value.</span><br></blockquote><blockquote type="cite"><span>The explanation is that, according to Wikipedia, an asterisk in the BNF stands for "0 or more times". So provided that there is not a mistake in the official standard document, shouldn't we support the above example?</span><br></blockquote><blockquote type="cite"><span>Which is the exact standard we are following? The Blue Book? The ANSI Smalltalk Standard?</span><br></blockquote><blockquote type="cite"><span>Best,</span><br></blockquote><blockquote type="cite"><span>Christoph</span><br></blockquote><blockquote type="cite"><span>--</span><br></blockquote><blockquote type="cite"><span>Sent from: http://forum.world.st/Squeak-Dev-f45488.html</span><br></blockquote><blockquote type="cite"><span></span></blockquote><span></span><br></div></blockquote></div></body></html>