flat assembler
Message board for the users of flat assembler.

Index > Heap > The Go Language

Author
Thread Post new topic Reply to topic
nyrtzi



Joined: 08 Jul 2006
Posts: 192
Location: Off the scale in the third direction
nyrtzi
Any thoughts https://golang.org/ on this one?

I looked at it and tried it out but it still seems somehow iffy.
Too much type casting and the wildcard interface concept that will accept anything makes the language feel really kludgy and dirty which makes me question if it really is any better than C.
Post 22 Dec 2014, 10:51
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17253
Location: In your JS exploiting you and your system
revolution
I liked this:
Programming today involves too much bookkeeping, repetition, and clerical work. As Dick Gabriel says, “Old programs read like quiet conversations between a well-spoken research worker and a well-studied mechanical colleague, not as a debate with a compiler. Who'd have guessed sophistication bought such noise?”
But I don't like this:
A simple C "hello, world" program compiled and linked statically using gcc on Linux is around 750 kB, including an implementation of printf. An equivalent Go program using fmt.Printf is around 1.9 MB, but that includes more powerful run-time support and type information.
Post 22 Dec 2014, 11:30
View user's profile Send private message Visit poster's website Reply with quote
TmX



Joined: 02 Mar 2006
Posts: 821
Location: Jakarta, Indonesia
TmX
I'm currently learning Go, in the context of web dev.
Not that bad, though.

I like it's package management and built-in concurrency support Smile
Post 22 Dec 2014, 11:53
View user's profile Send private message Reply with quote
nyrtzi



Joined: 08 Jul 2006
Posts: 192
Location: Off the scale in the third direction
nyrtzi
@TmX

I liked the goroutines and channels too or at least the idea. I'm not sure about the implementation though if it's true that the channels don't support passing user-defined datatypes. If you can't create channels from anything other than primitive datatypes then the whole idea gets way too much watered down.
Post 22 Dec 2014, 12:10
View user's profile Send private message Reply with quote
nyrtzi



Joined: 08 Jul 2006
Posts: 192
Location: Off the scale in the third direction
nyrtzi
@revolution

It would be nice to be able to skip all pointless bookkeeping and boilerplate but... I was writing Go code but when the time came to use unions all I found was an interface based kludge made mostly of excessive repetitive boilerplate (and I really hate it when I need to work around the deficiencies of the tools I'm supposed to use).

Then there is also the matter of GC performance which seems a bit iffy for realtime code.

Two megs for a Hello World sounds a bit too much. I would have expected that a static language could do better. Then again compared to the bloat of Java while being better than Java isn't any kind of an excuse in itself.

A simple HTTP server in Go can be written in 6 lines using the usual libraries and it's "only" 4.5 megs in size. It's nice to be able to write up something like that with so little code but I wonder if the libraries and especially language scale up in terms of brevity when one has to write a lot of complicated code. Thus far it feels like the answer would be a "no" simply because of the type system and the limitations and requirements it causes. It feels like the language went for a dirty and hackish compromise and I can't say that I appreciate that.
Post 22 Dec 2014, 15:00
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17253
Location: In your JS exploiting you and your system
revolution
For embedded realtime code I doubt there is any HLL that is up to it.

For bloated mash-up websites generating trivial fluff just to get advertising revenue then perhaps GO would be perfect?
Post 22 Dec 2014, 15:07
View user's profile Send private message Visit poster's website Reply with quote
nyrtzi



Joined: 08 Jul 2006
Posts: 192
Location: Off the scale in the third direction
nyrtzi
revolution wrote:
For embedded realtime code I doubt there is any HLL that is up to it.


C++? Then again to me C++ seems too complicated on both the inside and the outside. I'd rather avoid a big runtime and all the complexities related to debugging code with inheritance and all kinds of automatic and semiautomatic calls of constructors and destructors. The language doing the magic for you is nice until you need to debug it so I'd prefer to leave all the magic to when I go see a real magician's show. Not to mention the pain of debugging something related to STL templates.

revolution wrote:

For bloated mash-up websites generating trivial fluff just to get advertising revenue then perhaps GO would be perfect?


Then again the people writing those are already all hyped up about Ruby, PHP, etc. and don't give a flying calamari about stuff like type safety or using less resources because they can always slap some magical cache in front of their code to "speed it up". And if they write their sites right they can just slap it into some cloud and replace efficient algorithms and data structures by renting more resources.
Post 22 Dec 2014, 15:28
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17253
Location: In your JS exploiting you and your system
revolution
nyrtzi wrote:
... replace efficient algorithms and data structures by renting more resources.
Lazy programmers are the cause of global warming. Wink People writing wasteful code should have their license revoked and be barred from the profession until they have completed and passed a remedial course.
Post 22 Dec 2014, 15:35
View user's profile Send private message Visit poster's website Reply with quote
nyrtzi



Joined: 08 Jul 2006
Posts: 192
Location: Off the scale in the third direction
nyrtzi
revolution wrote:
Lazy programmers are the cause of global warming. Wink People writing wasteful code should have their license revoked and be barred from the profession until they have completed and passed a remedial course.


Then what about the people giving them the tools that allow them to write lazy code? Should we compare them to the people who sell weapons to terrorists? Just kidding... Razz
Post 22 Dec 2014, 16:10
View user's profile Send private message Reply with quote
baldr



Joined: 19 Mar 2008
Posts: 1651
baldr
revolution,

Methink, real-time programming is too much architecture-dependent.

"The ADA language" in customary translation to Russian gives "The language of hell". Wink
Post 22 Dec 2014, 18:32
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar.

Powered by rwasa.