Top
Best
New

Posted by bobbydigitales 15 hours ago

The Goose Programming Language(aardappel.github.io)
https://twitter.com/ID_AA_Carmack/status/2113704269274636568
384 points | 247 commentspage 3
hbogert 2 hours ago|
mighty interesting, i scanned the nuances about the memory model, but it doesn't explicitly say so, but am I right that some workloads will result in heavy fragmented physical memory allocations?
wewewedxfgdf 10 hours ago||
What are the down sides? That's the key question when a better thing comes along.
Aardappel 10 hours ago|
These are some downsides: https://github.com/aardappel/goose/blob/master/docs/tutorial...
wewewedxfgdf 10 hours ago|||
I'd put the pros and cons right up front on the README.

Selling the positives for a new programming languages should go hand in hand with a realistic thorough analysis of the negatives.

Negatives of the language as a brief point 18 on the tutorial makes the negatives look hidden.

malkia 9 hours ago||
He is not "selling" anything. I don't see a price, quite the opposite - it's on the user to evaluate it's points, not on the "seller" (that he is not). Obviously if this becomes paid, or paid through support product this would be one of the first points of the table - "what are the limitations, what should we be aware of sorts".
wewewedxfgdf 8 hours ago||
Of course he's selling. Almost every word on the front page readme is a features and benefits sales pitch.

But, as all good salespeople do, they focus on the positive and leave the negative in the fine print.

Selling happens everywhere all the time without price.

spopejoy 3 hours ago|||
> No function pointers

As in nothing functional at all? Or are there anonymous functions etc?

andsoitis 14 hours ago||
Lobster is the author's other programming language, previously discussed on HN: https://news.ycombinator.com/item?id=47239955
vanderZwan 13 hours ago||
*one of, you mean:

https://strlen.com/programming-languages/

onlyrealcuzzo 13 hours ago||
Interesting. Lobster rocks, and Goose is similar to something I've been building on the side, but would rather have someone build for me... Hopefully this guy does it!
daoxid 13 hours ago||
I'm curious, when returning a dynamically sized array from a function, does the whole array need to be copied? C++/Rust would simple move the array out of the function (i.e., they would only copy the pointer to the underlying data), but it seems this wouldn't work in Goose if the stack the dynamic array lives in is cleared on return?
malisper 13 hours ago|
Goose determines where the array will be copied to at compile time and allocates it there.

Rust does a similar thing. When a function returns a value, a location for it will be put in the callers stack frame. That means it automatically stack-allocates values when feasible. The downside in Rust is you need to know the size of the value at compile time whereas Goose can do it for arbitrarily sized values

asinglesprinkle 7 hours ago||
Im not gonna judge it by anything other than name. Its awesome, Goose it up.
Panzerschrek 5 hours ago||
> Memory is a handful of data stacks that the compiler assigns statically

I doubt this can work well in all cases. Sooner or later one needs proper heap.

cardanome 10 hours ago|
I hate when I see a new programming language, get my hopes up and it turns out to be AI slop again.

There might be some decent design ideas there but if you can't be arsed to write them down in your own words but instead make me read AI generated slop I am out.

Panzerschrek 5 hours ago|
Look at my language: https://github.com/Panzerschrek/U-00DC-Sprache/. It has plenty of interesting ideas, but is fully human-written (and will remain human-written).
More comments...