Live data from Hacker News

The first Go program (2013)

blog.golang.org

1–10 of 15 posts

Re: The first Go program (2013)

#3
post #2

I find it amusing that this first program in Go is for parsing an Lisp-style S-Expression, given that this has nothing to do with Go's syntax.

Most programs do something other than parse the syntax of the language they are written in. A programming language really only needs to be self-hosting once, and that may be an early program, but it seems unlikely it is the very first.

Re: The first Go program (2013)

#4
post #2

I find it amusing that this first program in Go is for parsing an Lisp-style S-Expression, given that this has nothing to do with Go's syntax.

One of my backlog-projects is an implementation of Common Lisp in Go, which can be easily used to provide an embedded scripting language for Go programs (and, eventually, an excuse to write 'Go' code which is actually Lisp). It's one of those crazy ideas I'll probably never get to, but it sure would be fun.

Re: The first Go program (2013)

#5
This seems relatively complex for being the first Go program. I suppose they wanted to test something non-trivial which took advantage of most of the implemented language features. I guess I was expecting something closer to a hello world program.

Re: The first Go program (2013)

#6
Performing archaeology on 4-year-old code is vaguely like smelling your own farts. I have a certain reverence for Thompson, Pike, and the rest of the old Bell Labs team, but I've sensed a tacit holier-than-thou attitude from the Go project since its inception.

These people, and this language, are not infallible. They might claim to be objective scientists, but they have a particular world-view. After all, Go is just an unimaginative Algol derivative with concurrency primitives that are high-level relative only to C/C++, and Plan 9 is just a better UNIX.

In science, it's unbecoming to fawn over creative people. Even more so over people who haven't produced a truly new idea in decades.

Re: The first Go program (2013)

#7
post #6

Performing archaeology on 4-year-old code is vaguely like smelling your own farts. I have a certain reverence for Thompson, Pike, and the rest of the old Bell Labs team, but I've sensed a tacit holier-than-thou attitude from the Go project since its inception. These people, and this language, are not infallible. They might claim to be objective scientists, but they have a particular world-view. After all, Go is just…

The code in question is actually 9 years old and I wouldn't exactly call the article fawning over brilliance, in fact the author discusses the fact that a lot of things changed in the language over time and the code itself is quite clumsy and has workarounds for things that were unimplemented.

Re: The first Go program (2013)

#8
post #3
post #2

I find it amusing that this first program in Go is for parsing an Lisp-style S-Expression, given that this has nothing to do with Go's syntax.

Most programs do something other than parse the syntax of the language they are written in. A programming language really only needs to be self-hosting once, and that may be an early program, but it seems unlikely it is the very first.

Yes, but most programming languages are around for a few years before someone tries to use them to implement another language.

Re: The first Go program (2013)

#9
post #4
post #2

I find it amusing that this first program in Go is for parsing an Lisp-style S-Expression, given that this has nothing to do with Go's syntax.

One of my backlog-projects is an implementation of Common Lisp in Go, which can be easily used to provide an embedded scripting language for Go programs (and, eventually, an excuse to write 'Go' code which is actually Lisp). It's one of those crazy ideas I'll probably never get to, but it sure would be fun.

I have ~that. Of course it's not Common Lisp though (so, Hubris Lisp?). Notably you have to statically register the Go functions you want to be callable from the Lisp side, because otherwise they might not even be present in the compiled binary (and even if they were, I don't think Go will help you find an arbitrary function by name at runtime). I've used it much more as a normal 'shebang' shell scripting language (even ""webapps"" via CGI) than an embedded one so far... mainly through lack of ideas that call for such a thing.

Re: The first Go program (2013)

#10
post #8
post #3

Earlier quoted context omitted.

Most programs do something other than parse the syntax of the language they are written in. A programming language really only needs to be self-hosting once, and that may be an early program, but it seems unlikely it is the very first.

Yes, but most programming languages are around for a few years before someone tries to use them to implement another language.

Toy s-expression parsers are on an equal footing with "Hello World" regarding their complexity.

It's not like they tried to implement some full Lisp/Scheme.

Post reply on HN