Maybe D is right about GC after all !

Russel Winder russel at winder.org.uk
Thu Dec 28 08:53:25 UTC 2017


On Thu, 2017-12-28 at 03:34 +0000, codephantom via Digitalmars-d wrote:
> 
[…]
> I tried Go. I didn't like it. Syntax changes were not necessary, 
> and I got the feeling that the philosophy of Go, is that 
> programmers are incompetent and need training wheels. It wasn't 
> for me.

The core of go is lightweight processes and message passing/channels.
This makes it an excellent language and one of the reasons it has taken
off. (D has heavyweight processes and message passing which is great,
but isn't the same as Go.) A core principle for Go is that Google
interns can't break stuff in Google code. Add that to being a GC
focused extension of C and voila Go. It is a good language if you get
into it: a small language with a few annoying quirks, but a simple way
of working with objects and types, a small well constructed core
library, and a quasi-infinite, flexible secondary library, that allows
anyone to contribute at any time.

Plus the implicit pressure of being from Google, with JetBrains IDE
supports, and you get a very successful language, that has ended up
being a niche language: The Web. As opposed to being a general purpose
systems programming language.

> I looked at Rust, but never tried it, as I found the syntax to 
> pretty awful - and it reminded my too much of C++.

The syntax is fine, and it is so unlike C++, it is easy to get into. I
am using Rust as my primary language for all GStreamer stuff now.

> I looked at D, it looked nice. Syntax was familiar, and very C 
> like (which is the best kind of syntax IMHO). I decided to try 
> it.. and I just found it easy to work with...despite some bugs, 
> which you kinda of have to accept for now..but it's getting a lot 
> better.
> 
> Most importantly for me, is that it works on FreeBSD, otherwise 
> I'll lose interest immediately. I still use C though, as C is 
> still 'the' primary language on x..BSD, and will remains so for 
> the forseeable future.

Which is a tragedy. Why use portable assembler in 2017 when there are
actual high level languages such as Go, Rust, D, available for
everything except the very lowest level work.

> But gee.. I can do things in D so easily and quickly compare to 
> C, and I don't feel like I giving up much for that convenience. 
> Compare that to running dotnet ... grrrr...you sit there just 
> waiting for the program to load.

C# and F# also have a lot going for them, I suspect you used it is the
wrong context and so got a bad feel. The same is true for Java. Kotlin,
Groovy, I guess which are great in a JVM-centred context.

> So everyone comes to a new language with their own requirements.

But mostly their own prejudices. Everyone brings their baggage.

> Work out what your's are... or just play with it.. and enjoy what 
> it has to offer.
> 
-- 
Russel.
==========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20171228/c2edb6b6/attachment.sig>


More information about the Digitalmars-d mailing list