On Sunday, June 16, 2013 4:15:54 AM UTC+10, Jeff Schnitzer wrote: > I finally have some significant hands-on experience with Go (not on GAE). > It's definitely an improvement over C or C++, and seems "about right" for > building things you would otherwise write in C or C++. > > On the other hand, it seems like a poor platform for building large > complicated web applications: > > * The module system is fairly primitive and doesn't take versioning into > account. > > * No exceptions. This (and the "debate" around it) is just silly. >
There is a much discussion about these topics on the golang-nuts mailing list. The issues are complex and subtle, so your dismissiveness is not very productive here. > * Bringing back the distinction between stack objects and heap > references. It seems like this could be a potential boon to performance, > but according to http://benchmarksgame.alioth.debian.org/ it doesn't > appear to yet be the case. Probably this is due to Go's poor GC (and Java's > highly-refined GC), which may change in the future. But you pay for this > distinction in terms of code complexity up front. > > * The IDEs are still pretty primitive. Go seems to have inherited VT100 > text-editor culture, which is sad. See this comment from Rob Pike: "Syntax > highlighting is juvenile." ( > https://groups.google.com/d/msg/golang-nuts/hJHCAaiL0so/kG3BHV6QFfIJ). > This is retarded, and makes me wonder what other stupidity is getting > encoded into the language/culture/tools (besides the lack of exceptions). > While it's true that Rob doesn't like syntax highlighting, he is a pioneer of graphical computing environments and has a lot of disdain for the terminal-based environments that people (like me, a Vim user) still cling to. In fact, Rob has designed several graphical editors and currently uses Acme <http://research.swtch.com/acme>. While IDE support for Go is still nascent, the team is working on improving it. For instance, check out the new ssa package<http://godoc.org/code.google.com/p/go.tools/ssa>, which enables whole-program analysis and should power some impressive IDE tricks. Please don't mistake the relative immaturity of our IDE support (compared to, say, the decades of work spent supporting Java) for disinterest. We're working on it, but doing it right (which we pride ourselves on) takes time. > It's pretty obvious that Go comes from old-school C hacker culture - > people that have probably never worked on webapps. So don't expect Go to be > suitable for writing webapps. > On the contrary: I and many others have written many web apps in Go, and we're having a great time. Go's greatest strength, IMO, is simplicity and readability. I can have way more confidence in the correctness and robustness of a Go web app than, say, a Python app (where any expression can raise an exception—did I handle all the cases? I can never know). > Jeff > > On Fri, Jun 14, 2013 at 9:47 AM, Tom <[email protected] <javascript:>>wrote: > >> I saw the new blog post here promoting Go for "high performance" apps on >> App Engine >> http://blog.golang.org/go-and-google-cloud-platform >> >> I remember reading about Go with considerable interest when it was >> announced. The controversial and particularly unique elements of Go's >> design were justified with the explanation that Go was designed for >> building massive systems. In particular a number of design concessions >> were made such that massive code base could be built quickly. >> >> I don't mean to put Go down - I wasn't building massive systems so I >> didn't pursue the language and know nothing of it beyond its high level >> design justification. For all I know it is a great language. >> >> My point in making this post is that I hope Google will, with time, also >> support C-based languages for web serving on GAE, rather than requiring the >> vast number of us who already know them so well to learn a new language >> that was designed for such a different purpose. >> >> I will add that I'm currently using GAE/J to back an Android app, and the >> ability to share code between client and server is terrific, so I think >> there is a lot of value in adding new GAE runtimes that correspond to >> client technologies. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Google App Engine" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To post to this group, send email to >> [email protected]<javascript:> >> . >> Visit this group at http://groups.google.com/group/google-appengine. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/groups/opt_out.
