Similar to V? What's V 😂
Enjoyed reading this
yes, immutable by default is dumb and forces you to do a lot more running around with the GC
that's the biggest mistake in Go, but only affects strings, in Rust it's everything
the adoption of this idiotic notion was the reason why i immediately did not want to try V either, and nostr:npub16c2fsg7fp3yxte9ugd9yhcdpa68h924asv5d6pvm5nc37a3nkzmqd2xaj2 made a language similar to V which also has this idiotic notion in it, unless i'm mistaken
wrong, wrong, wrong
this is why the only programmers who aren't gophers that i respect on nostr are C programmers, because in C you have to do things the same way, mutable by default for everything including strings
Similar to V? What's V 😂
Enjoyed reading this
you'll see what i mean
it was one of the first "let's make it like go, but like rust" things
the dumbasses who follow the fashions
always are like the skateboard-rake meme... they invent some new complicated shit to end up being smacked in the face same as before. welcome to the real world. your eyes hurt because you never used them before
Okay, cool. T isn't that.
V is extremely fast to compile, its syntax is way simpler than rust and enables much of teh same things
i almost adopted it except it kinda put me off this mutable bullshit
my second programming language was assembler
i know the extra rigmerole required to fuck around with MMU shit and there is no reason to do it, except for fencing processes into the memory that they have permission to access
using it for write control is incredibly complex and failure prone and a lot of extra processing to protect you from what
dumbass peers?
i also have big problems with the whole "internal" "don't export it" thing, too many times in Go libraries some genius hides critical functionality inside something i can't access because internal
i now have a policy of hide it only if in really has no use, i understand the bugs you can get from permeable interfaces and reaching through interfaces into underlying stuff but those necessities actually indicate that the hidden shit should be a shared library not hidden
I'll enthusiastically agree with the hidden internals thing. I sarcastically LOVE writing wrapper classes for your library because you decided I don't deserve insight into critical internal state.
the number of times this has blocked me from achieving something i've lost count
If rust can have an "unsafe" keyword to allow poking at memory when nothing else will do the languages can introduce a 'sudo give me access to your private members' keyword.
go already has this, it's called "unsafe" and "reflect" and you can do a lot of cool things but actually you don't really want to do them most of the time
i'm a conniseur of programming languages, and i haven't gone to the full distance of building my own but i know the parts of these things intimately and i love it when i make an excuse to write a parser or tree walker or any of this fun language shit
locking memory with MMU is the dumbest bullshit ever, it's a waste of an important resource
much better is locking processes IN to their own allocated heaps, and locking them OUT of everything else
if you understand boolean logic you will see that making locks on internal stuff is extreme overhead and complexity and is a substitute for compiler security features