The Golden Spike, and Resurrecting the Vale(n) Programming Language
52 points by Verdagon
52 points by Verdagon
My wish list:
... A language that leans into simple/elegance, instead of solving each new problem with a new keyword or a new library or a new idiom or a new syntax or a new DSL. I'm tired of languages that create complicated bureaucracies in figuring out how to express and every last computation in never ending changing verbiage, creating a sort of "rent seeking/gate keeping" option for "those that master the system".
(this is a dig at Rust and C++ and all the like; I've not read enough Vale to see where it measures in the above regard)
Well said. I think two opposing things will happen:
The big question is whether the benefit will be greater than the cost. Maybe Valen will be a wonderful simplifying interface, and do well. Or maybe the abstraction will leak Rust's complexity, and not do well.
I think it will all come down to language design, culture, and ecosystem management. I don't know the answers, but I do know that they need to be figured out before launching to a wide audience, that's for sure.
Would welcome any thoughts if you have them, btw.
How do you imagine such languages to be like? And, the corresponding culture without the "rent seeking/gate keeping"? Which existing languages, if any, would you consider to have striven towards the kind of simplicity or elegance you're hoping for? (Basically, talk some more, I'm listening. Or if you (or others you agree with) have written at length on this matter (that you're aware of), point me towards them.)
What’s the deal with Vale these days? Should anyone other than you be using it @verdragon?
Vale only ever made it to version 0.2, which I consider roughly equivalent to "an intriguing proof-of-concept". It was more about trailblazing over stability, experiments over users. And it succeeded (Vale directly inspired at least three languages to add linear types, huzzah!), so no more work is happening with it, so users probably shouldn't be using it.
I'm taking the opposite approach with Valen: I'm going to finish Rust interop and memory safety, stabilize everything until it's actually solid, and only then will I let myself move onto the more flashy features (like blending group borrowing with generational references!). Before that, probably only fellow language nerds should use Valen.
This is true hacker work :)
Keep going, I'd love to hear more and try things out after the cleanup round!
The footnote-margin comment merging approach is quite interesting (as well as the footnote boxes).
Rust has too weak of a type system to be really good as an interop language (but much better than C).
However, imagine you could build bindings on top of Ada! Now that would be amazing.
Huh, I wouldn't expect someone to claim Rust has a "weak" type system. I know Ada has types for integer ranges like 0..100—although I would usually fall back to a newtype pattern like NonZero<T> for similar cases in Rust. What else does Ada have that would help with strong interop typing?