Go: A new system programing language

Bill Baxter wbaxter at gmail.com
Wed Nov 11 11:25:31 PST 2009


On Wed, Nov 11, 2009 at 10:55 AM, Walter Bright
<newshound1 at digitalmars.com> wrote:
> Bill Baxter wrote:
>>
>> It's harder to find those when you're skimming through trying to get
>> the highlights with a 5 minute limit.  :-) What are some things is it
>> missing?
>
> Off the top of my head, some major ones:
>
> . exception handling
> . generic programming
> . metaprogramming
> . inline assembler
> . interface to C

He does say there is a FFI that lets you call C that "coming along
nicely" or something like that.  Not sure how cumbersome it's gonna be
though.

> . RAII
> . immutability for anything but strings
> . vector operations
> . operator overloading
> . purity
> . CTFE
> . unit testing
> . documentation generation

They have a "godoc" tool written in go already, though.

> . ability to write systems code like implement a GC
> . conditional compilation
> . contracts
> . 80 bit floating point
> . introspection (runtime or compile time)
> . delegates
> . reference parameters
>
> Not sure if it has closures or not.

Yes, he says in the video that funcs are full closures.

> And of course a lot of minor ones,
>
> . no _ in integer literals
> . no nesting comments
> . no entities

Also
. no pointer arithmetic

Not sure what I think about that.  Can you even have a "systems"
language that doesn't allow pointer manipulation?

But that's a good list.  In the video he makes it sound like generics
will probably happen eventually, they're just not sure how best to do
it yet.   Lack of operator overloading is annoying.  I guess that's
not unexpected given that their mission was to write a good language
for writing servers.  But if they don't do something about it (among
other things) they'll miss out on the game and numerics audience.

--bb



More information about the Digitalmars-d mailing list