Live data from Hacker News

A Tour of Go - Real examples of interfaces and concurrency

research.swtch.com

1–10 of 15 posts

Re: A Tour of Go - Real examples of interfaces and concurrency

#3
Go is a fine language for the most part but has some oddities. For example, Russ Cox is proud in the video that printf is not builtin (it uses language reflection features), but programmers can't even write their own maps/fancy data structures due to the lack of generics.

Also, I found that pointers and references get mixed up all the time and lead to subtle bugs (at least in my code).

Re: A Tour of Go - Real examples of interfaces and concurrency

#5
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 :)

Re: A Tour of Go - Real examples of interfaces and concurrency

#6
post #5

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 :)

Supposedly Ken uses Sam because he doesn't type very quickly.

Stroustrup and Kernie use it too.

Re: A Tour of Go - Real examples of interfaces and concurrency

#7
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.

Re: A Tour of Go - Real examples of interfaces and concurrency

#8
post #5

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 :)

I've used sam a bit in the past, when I was working in a pretty heterogenous Unix environment (Suns, SGIs etc.). The split between the display component and the actual editing core made that pretty easy to do, a good alternative to vi over ssh (given terminal funkiness and differences between vi implementations).

I liked the regular expression syntax, the ed/ex editing window and the actual GUI text editor wasn't that bad, if I remember correctly. Selecting the whole area between brackets or quotation marks was done easily (double-clicking) with the mouse and is very useful.

As for acme, mouse chording isn't for everyone, but definitely worth trying at least once. One of the better features they borrowed from Oberon… When I work with some other editors, I do tend to work a bit with "registers" and similar copy/paste buffers, as opposed to just reusing the one thing you've just selected. For a similar approach to "saving text for later", a secondary file/buffer with all the snippets might work for the smaller stuff. Similarly, a "bookmark" facility wouldn't hurt, but you can work around with spurious superflous characters (e.g. %%%%) and just searching for it. Acme does searching quite well, and you're in no danger of messing up syntax highlighting.

The real secret sauce to advance Acme editing would be plumb, to use where you'd reach for scripts in vim or emacs. Haven't really gotten too much into that, but some more regular users might help out here.

As for syntax highlighting, yeah, sometimes the Plan 9ers tend to sound almost Luddite. Quite often they're "right" in a way, although in this specific case I don't see why you couldn't extend the rendering engine of Acme to support fonts and colors and just use something external (i.e. plumb-like) to drive syntax coloring or other highlighting features. But easier said than done, of course. Not sure how much hacking is going on at the Plan 9 core tools right now. A reimplementation in go might be nice, with a Plan-9/Inferno-like cross-platform GUI toolkit, while we're daydreaming.

plumb: http://doc.cat-v.org/plan_9/4th_edition/papers/plumb

Re: A Tour of Go - Real examples of interfaces and concurrency

#9
post #8
post #5

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 :)

I've used sam a bit in the past, when I was working in a pretty heterogenous Unix environment (Suns, SGIs etc.). The split between the display component and the actual editing core made that pretty easy to do, a good alternative to vi over ssh (given terminal funkiness and differences between vi implementations). I liked the regular expression syntax, the ed/ex editing window and the actual GUI text editor wasn't tha…

> Not sure how much hacking is going on at the Plan 9 core tools right now. A reimplementation in go might be nice, with a Plan-9/Inferno-like cross-platform GUI toolkit, while we're daydreaming.

This would be cool, but remember that Russ Cox (among many other things) still maintains (and uses) Plan 9 from User Space:

http://plan9.us

Also there is Acme Sac, which is standalone reimplementation in Limbo:

http://code.google.com/p/acme-sac/

The cool thing about Acme sac is not just that is portable to Windows too, but that it includes the whole Inferno environment under the covers.

Still, I would love to see a rewrite of Acme or something like it in Go, and wouldn't be surprised if Rob gifts us with one more text editor :)

For more info about Acme see:

http://acme.cat-v.org

Re: A Tour of Go - Real examples of interfaces and concurrency

#10
post #5

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 :)

I use Acme for my hobby coding. But for work I tend to deal with horrible java and php code, with lots of code across lots of files so even small changes require modifying many files in many different places. I've found Acme gets difficult to use in this situation so I use a horrible IDE.

Acme is great for writing Go though. I don't miss syntax highlighting when using Acme, but I do miss Acme's ability to execute arbitrary text when using the IDE.

Post reply on HN