

A Tour of Go - Real examples of interfaces and concurrency - pessimist
http://research.swtch.com/gotour

======
lclarkmichalek
I really hate to bring up the generics point, but I did really miss them when
I used Go. Sure, you can ignore their absence, but every time I saw a API that
took or returned `interface {}`, I felt like the type system was being wasted.
Other than that though, Go is definitely on favorite languages to watch from
afar.

~~~
pjmlp
This is what made me move away from Go to D.

------
exim
Regarding the Acme text editor - any users of it here, on HN? I'm really
interested to hear some arguments from Acme or Sam userbase - what do you find
useful in these editors?

I vaguely remember the reply on Acme's mailing list, that it is a text editor,
not a rainbow, when someone asked about syntax highlighting feature :)

~~~
rogpeppe1
I've been using acme for a long time (previously vi was my editor of choice).
One property of acme that I think isn't so obvious is the way that text
becomes higher-order, in the same kind of way that S-expressions in Lisp are
higher-order.

Much of the power of Lisp comes from the fact that the result of executing an
S-expression is also an executable S-expression itself, so programs that write
programs become trivial.

This property is true of acme too - we execute text with a middle-button click
or drag, and the command that's executed can produce more text, which is
itself executable text.

Thus I can extend the functionality of acme by writing tiny shell scripts that
print useful commands. I can run a command that produces a list of stuff, use
structural regexps to transform that stuff into an acme command, then execute
that to transform something else.

The power of structural regexps combined with proper Undo/Redo is also great -
rather than pipe something through sed or awk, I'll often iteratively build up
an expression or set of expressions that perform some particular one-off
transformation, rewinding and retrying as necessary.

I could go on!

Acme certainly isn't perfect, but it is wonderful.

~~~
owlpic
"The power of structural regexps combined with proper Undo/Redo is also great
- rather than pipe something through sed or awk, I'll often iteratively build
up an expression or set of expressions that perform some particular one-off
transformation, rewinding and retrying as necessary."

It would be interesting to see examples of this.

------
genwin
This helps. I've been learning Go. I'm pretty much in love with it even though
I haven't done much with it yet.

------
jamesmiller5
Great stuff, I think it's more clear than the previous demos with reader and
writer examples.

------
charlesap
"your entire program has been garbage collected" I need this on a t-shirt.

