[squeak-dev] [:x] considered improper (was Re: The Inbox: ShoutCore-ct.69.mcz)

John Pfersich smalltalker2 at mac.com
Tue Feb 11 09:28:00 UTC 2020


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. 

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.

/————————————————————/
For encrypted mail use jgpfersich at protonmail.com
Get a free account at ProtonMail.com
Web: https://objectnets.net and https://objectnets.org
https://datascilv.com https://datascilv.org


> On Feb 10, 2020, at 13:46, Levente Uzonyi <leves at caesar.elte.hu> wrote:
> 
> Hi Christoph,
> 
> My understanding is that the conclusion was that [:x] should not be valid[1].
> In my option, it makes no sense to support a useless extremal case.
> The BNF you posted below says that it is not valid.
> 
> 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
> - I doubt anyone would like to pay for it to find out
> - I'm not aware of any smalltalk implementation that would strictly follow the standard
> - the standard is not a good standard
> 
> In my option, [|] is another extremal case that I don't think we need to support.
> It's longer than [], and both parsers detect it the same way: the closing | of the temporary declaration is missing.
> 
> 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.
> 
> 
> Levente
> 
> [1] http://forum.world.st/The-Inbox-ShoutCore-ct-69-mcz-tp5102398p5102912.html
>> On Mon, 10 Feb 2020, Thiede, Christoph wrote:
>> 
>> [Ugh, Nabble removed all my code examples again. Resend below:]
>> _________________________________________________________________________________________________________________________________________________________________________________________________________________________________
>> Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von Thiede, Christoph
>> Gesendet: Montag, 10. Februar 2020 14:10 Uhr
>> An: squeak-dev at lists.squeakfoundation.org
>> Betreff: Re: [squeak-dev] [:x] considered improper (was Re: The Inbox: ShoutCore-ct.69.mcz)  
>> Sorry for reviving this old thread ...
>> This is still an open issue, isn't it?  (oh, it would be so comfortable if we had something like GitHub issues ...)
>> And just one related question: According to the BNF John mentioned --
>> <block constructor> ::= '[' <block body> ']'
>> <block body> ::= [<block argument>* '|'] [<temporaries>] [<statements>]
>> <block argument> ::= ':' identifier
>> (from the ANSI Smaltalk Standard)
>>  -- the following should be valid syntax as well, shouldn't it?
>> [|] value.
>> 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?
>> Which is the exact standard we are following? The Blue Book? The ANSI Smalltalk Standard?
>> Best,
>> Christoph
>> --
>> Sent from: http://forum.world.st/Squeak-Dev-f45488.html
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200211/5536bfc4/attachment.html>


More information about the Squeak-dev mailing list