One year of Go

Russel Winder russel at russel.org.uk
Fri Nov 12 08:47:35 PST 2010


Sean,

On Fri, 2010-11-12 at 11:29 -0500, Sean Kelly wrote:

> To me, what they're saying is that their syntax is broken and so it
> forces a convention upon the users to deal with the issue.  I know
> this is just a bike shed issue, but seeing something like this in the
> beginning of the tutorial makes it difficult for me to take them
> seriously.

If I remember correctly, they used to enforce semicolons as line
terminators -- and indeed you can still use semicolons as statement
terminators if you want.  However, all the folk who had used any of the
"semicolon free" languages started grumbling loudly and at great length
-- and quite right to, semicolons are an eyesore! ;-)

The Go developers then realized that due to their enforcement of a
single brace and newline policy -- i.e. they are formatting fascists
compared to other curly bracket languages -- they could actually
dispense with semicolons in the input source code and reinsert them for
the parser during the lexing.  So the parsed language has semicolon
statement terminators, even if the input source does not.

Now you can treat this as a stupidity, or an evil hack, or pragmatism, I
am going to steadfastly sit on the fence of any emotional argument on
this, but I have to say I quite like not having to have semicolon
statement terminators.  And the enforced formatting is not actually too
brain dead.

So all in all whether it is a serious issue or not, it doesn't actually
matter than much when writing Go code.

-- 
Russel.
=============================================================================
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder at ekiga.net
41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel at russel.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20101112/efa2ad7c/attachment.pgp>


More information about the Digitalmars-d mailing list