Pandora Google Go On Pandora

How do you see its success?


  • Total voters
    52

rabidpoobear

Active Member
Joined
Aug 5, 2008
Messages
978
Age
35
Location
Texas
Website
www.lukevp.com
Have you guys heard of Google's new programming language? Robert Pike and Ken Thompson are core developers. It's got a lot of support for multicore / concurrency business that wouldn't help on Pandora, but it also seems like a fast-running, fast compilin' (as in, you could probably realistically compile directly on Pandora) pseudo-C language that has what appears to be an innovative type system, among other things.

Anyway, it can be found at http://golang.org/ . Some relevant topics of discussion - it was mentioned in the Google Tech Talk by Rob Pike that Go has an ARM implementation that is nearing completion. It appears it is still not feature complete according to the go docs. You think they actually will catch it up with the main branch soon?

Rob said they expect to have the FFI done by the end of 2009 so that we will be able to get C support, which leads me to believe that a wrapper around SDL could be made similar to Pygame-Ctypes for Python (where ctypes is Python's foreign function interface). He also said SWIG should be out sometime early next year (I think?) which would open up C++ libraries as well.

Currently the standard library is fairly weak, and there's no Windows port, but then again it was just announced a few days ago. Do any of y'all have opinions on it? Think it will tank, or thrive? Anything with a Google brand on it has a good boost regarding possible successes, but they have also had some unsuccessful ventures in the past as well, and even if Go doesn't catch on it will likely still be useful for Google.
 
A brand new language happens about 40 times a day I imagine; it doesn't come with any libraries so perhaps it'll find a quicker niche as a script language, but it has stiff competition there as it doesn't add much to things like erlang or python (where it derives much of its influence.) These days people tend to be lazier and want convenience, so they can cut to the business-logic chase without fighting every little detail first, so popular languages come with huge libraries behind them. (Which is a boon in that sense, and a pita in other senses when your hello world requires a 50MB jar file to go with it)... so might be a tough sell for awhile. But its google me-too'ing, so people will no doubt go bonkers over it.

Anyway, it barely builds on a lot of platforms, so why worry about it for pandora just yet?

Still, you can try to build it and jump on if you like; why not? Good developers like to fusk around with everything, so have fun :) Myself, I've cut my teeth on enough new languages (usually more pain than they're worth until they get their legs under them), and since time is tight I usually want to get things done more than wrestle with minutia, so I'll likely stick to young-but-working languages for fiddling time :) (But as someone who does a lot of embedded and always cross platform, I have to be much mroe careful than most people.)

jeff

edit: I try to ignore the pro- and anti- hype machines, but should be interesting to see what they do with the name; seems really ignorant of them to pick a language name that is already somewhat established -- ie: google's own seach turns up a book about the existing Go language and all :)

edit: Everyone should just cut to the chase and go with Common Lisp!
 
skeezix said:
A brand new language happens about 40 times a day I imagine;
True.
skeezix said:
it doesn't come with any libraries so perhaps it'll find a quicker niche as a script language,
What?? It comes with a library that includes everything from reflection to file management, database access, cryptography and so on. The only thing that's really missing is a GUI and OpenGL/AL/CL access.
skeezix said:
but it has stiff competition there as it doesn't add much to things like erlang or python (where it derives much of its influence.)
Yeah, Go seems to be really inspired by other languages. Its syntax sucks, too, and isn't innovative at all.
skeezix said:
These days people tend to be lazier and want convenience, so they can cut to the business-logic chase without fighting every little detail first, so popular languages come with huge libraries behind them. (Which is a boon in that sense, and a pita in other senses when your hello world requires a 50MB jar file to go with it)... so might be a tough sell for awhile. But its google me-too'ing, so people will no doubt go bonkers over it.
Well, the Go core libraries are quite tiny, but they are statically included in every assembly, so it's doomed to fail.

skeezix said:
Anyway, it barely builds on a lot of platforms, so why worry about it for pandora just yet?
Because there's a working ARM compiler already? It's weird that the Go people decided to create independent compilers for every platform (6g, 8g, 5g for x86, x86_64, and arm5 respectively), but at least that means that there's a working compiler optimized for each platform.

skeezix said:
Still, you can try to build it and jump on if you like; why not? Good developers like to fusk around with everything, so have fun :) Myself, I've cut my teeth on enough new languages (usually more pain than they're worth until they get their legs under them), and since time is tight I usually want to get things done more than wrestle with minutia, so I'll likely stick to young-but-working languages for fiddling time :) (But as someone who does a lot of embedded and always cross platform, I have to be much mroe careful than most people.)
I just love exploring new language frontiers (I tried Scala, Noop, and Pure the day they came out for example, and they are all beautiful languages)

skeezix said:
edit: I try to ignore the pro- and anti- hype machines, but should be interesting to see what they do with the name; seems really ignorant of them to pick a language name that is already somewhat established -- ie: google's own seach turns up a book about the existing Go language and all :)
Well, I think that they can modify that particular fact (because they own the search engine and can adjust the algorithm). And Google likes playing with words (The Go language is called Go (duh), and their debugger is called Ogle. Yeah.)

skeezix said:
edit: Everyone should just cut to the chase and go with Common Lisp!
NO! Haskell! :p
 
Last edited by a moderator:
I spent the last month integrating Lua with my apps and then learning and writing Lua scripts. Now I've done that I'm not likely to learn yet another language for another task. My brain is on the verge of exploding already.

I like Lua because it just takes your plain text file, compiles it to byte code in memory and runs that. No compiled versions of files scattered around your drive. Its also pretty damn quick at doing that, easy to integrate with applications and easy to modify.

Maybe Go is the same, I don't know, I've not seen benchmarks (only the "look how fast it compiles stuff" video), but it has to compete with stuff thats already being used, so it has to offer something new and exciting (developers like exciting stuff) to get a foothold.

Lets see if Google commit to this long term. If they solely depend on its open source nature, it'll probably fail, but if they keep pushing, maybe it'll become another web standard to compete with Javascript, or maybe even battle languages such as C# in the future.

Does it have a debugger/interpreter yet, or just a compiler?
 
By missing library I mean .. sure, it has malloc, but _duh_ :) It doesn't have anythign barely medium or high level, and doesn't include things like sockets, from when I took a quick look; I might'v emissed it, but it was just slim. (Thats fine, its new, and maybe thats the point, I merely post an observation, since you asked :)

Really, a config file is a 'custom language', and goods devs should be looking at ocmplex code as a language in a way, or even write their own very specific mini scripting languages; everyone shoudl write a language, and then they learn why its really hard to write a good one, and then stop doing it :) I've done some real winners (by which I mean, total dogs!), so now I just embed Small or Python and cut to the chase :)

jeff
 
Squidge said:
I spent the last month integrating Lua with my apps and then learning and writing Lua scripts. Now I've done that I'm not likely to learn yet another language for another task. My brain is on the verge of exploding already.

I like Lua because it just takes your plain text file, compiles it to byte code in memory and runs that. No compiled versions of files scattered around your drive. Its also pretty damn quick at doing that, easy to integrate with applications and easy to modify.

*this*

Lua has a bad name in the gaming scene, I think from the PSP days and LuaPlayer. But really, almost every application could be better with a lil lua inside.
 
Last edited by a moderator:
rabidpoobear said:
It's got a lot of support for multicore / concurrency business that wouldn't help on Pandora
yes it would perhaps not in the multicore sense but Arm processors can process multiple instructions at the same time Go alows for optimization of this in a multi process multi task enviorment
 
Last edited by a moderator:
Squidge said:
I like Lua because it just takes your plain text file, compiles it to byte code in memory and runs that. No compiled versions of files scattered around your drive. Its also pretty damn quick at doing that, easy to integrate with applications and easy to modify.

Maybe Go is the same, I don't know, I've not seen benchmarks (only the "look how fast it compiles stuff" video), but it has to compete with stuff thats already being used, so it has to offer something new and exciting (developers like exciting stuff) to get a foothold.

Does it have a debugger/interpreter yet, or just a compiler?

For now, it's just compiled. It's meant to fit in the C / C++ niche, of languages that are compiled to native code, and execute quickly, but it's also garbage-collected like Java.
I don't know if they're planning an interpreter, and there's still 1 or 2 steps of compiling and linking depending on which compiler you use. (There's a gcc compiler and then the regular one)
 
Last edited by a moderator:
Gary13579 said:
Lua has a bad name in the gaming scene, I think from the PSP days and LuaPlayer. But really, almost every application could be better with a lil lua inside.

That's not strictly true - well, your definition of 'gaming scene' is really narrow, anyway. Lua's embedded in a large number of commercial games...

http://en.wikipedia.org/wiki/Category:Lua-scripted_video_games
 
Last edited by a moderator:
i like it. it remains true to the global trends in procedural languages without falling in the pits c++ fell in. and that one fell in quite a few.

i'd gladly use it on the pandora (and outside of it).
 
skeezix said:
Really, a config file is a 'custom language', and goods devs should be looking at ocmplex code as a language in a way, or even write their own very specific mini scripting languages; everyone shoudl write a language, and then they learn why its really hard to write a good one, and then stop doing it :) I've done some real winners (by which I mean, total dogs!), so now I just embed Small or Python and cut to the chase :)

jeff
Amen! :)
 
Last edited by a moderator:
Remember Rlyeh and his HPL? The language where you could target every supported system at once, and to compile it you just dumped it into a .c file and #included the "compiler" ? Yes, every command was a #define :)

He spent a LONG time on that, which was written specially for his emulator collection. I don't think the final product was ever released though. I know it worked, but I don't know if it was completed.

(AFAICR)
 
Google go looks awfully Java-ish in syntax. Why would anybody want to program in it?
 
Aethix said:
Google go looks awfully Java-ish in syntax. Why would anybody want to program in it?
C, C++, C#, Javascript, Objective-C, GLSL, HLSL and Google Go look awfully Java-ish in syntax. Why would anyone want to program in those languages?
 
Last edited by a moderator:
Crazy abuse of dot notation, for one thing. I think it uses forced OOP, like Java and VB.NET.
 
Back
Top