Opportunity

Russel Winder russel at winder.org.uk
Tue Apr 9 01:17:27 PDT 2013


On Mon, 2013-04-08 at 23:51 +0200, Paulo Pinto wrote:
[…]
> Lets not forget the lack of generics, the religious view against dynamic 
> linking and errors for unused variables and imports.

OK so every language has it's religious side: Go's obsession for static
linking is indeed a problem and cgo is not really the solution.

Another religious element is that the language is tiny (which I find
good), and distributed version control for imports is included in the
language (which I think is brilliant). I want this is C++, D, Java,
Groovy, Python, Kotlin, Ceylon, Scala. etc., etc. Why are 21st century
languages still not connected to 21st century version control? For me,
Go has introduced so seriously sane innovation here (*).

I am not a fan of the unused variables and imports being errors, but I
can live with that. What I can't live with is the fascism of gofmt. Yet
I do :-(

I have yet to find anyone who can tell me why Go must have generics with
a cogent argument that makes sense to me. OK so C++ has generics;
templates, how wonderful. Java has generics, and type erasure, great.
Scala, Ceylon and Kotlin have huge infrastructure to reify generics on a
platform with unreified generics. At least C# got that right. Why is the
Go idea of total separation of state and behaviour not a good
experiment, after all JavaScript, Python, etc. have shown this works
even without static type checking.

I generally don't actually care about the state of the objects in a
container, all I care about is whether they responds to the messages I
want them to respond to. Let's do object-oriented programming: state is
supposed to be hidden behind the behaviours. Why does this mean I have
to bind the exact behaviours to a given state?

(*) Though it wasn't the core developers that pushed it into the
language!
-- 
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 winder.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/20130409/f06301e2/attachment.pgp>


More information about the Digitalmars-d mailing list