Our great sponsors
- Onboard AI - Learn any GitHub repo in 59 seconds
- InfluxDB - Collect and Analyze Billions of Data Points in Real Time
- SaaSHub - Software Alternatives and Reviews
-
ponyc
Pony is an open-source, actor-model, capabilities-secure, high performance programming language
You can actually try to have a magic language which "does not ignore decades of PL research" but you are likely to get either something broken or a project that is likely not going to release in our lifetime.
-
For finite solutions that you can fit in your head maybe, but I'm still sure that fuzzing, coverage, and [advanced testing](https://github.com/flyingmutant/rapid) are ways to go. And nothing beats integration testing if you need to see how application interacts as a whole.
-
Onboard AI
Learn any GitHub repo in 59 seconds. Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at www.getonboard.dev.
-
Many languge features get proposed and explored in RFCs, some of them don't quite work out, sometimes it's for good reasons and sometimes for bad reasons, but you can't say they weren't evaluated. There was discussion of dependent types here, with thus-far not great outcomes: https://github.com/rust-lang/rfcs/issues/2709
-
Go Team wanted generics since the start. It was always a problem implementing them without severely hurting compile time and creating compilation bloat. Rust chose to ignore this problem, by relying on LLVM backend for optimizations and dead code elimination.
-
You can actually try to have a magic language which "does not ignore decades of PL research" but you are likely to get either something broken or a project that is likely not going to release in our lifetime.
-
Those 3 main items are actually exactly the 3 that I most want from Go, which I don't think is a coincidence. We might be on the same page about a lot of this already. I have been only intermittently following Go evolution proposal issues, so I hadn't yet seen the sum type proposal posted two months ago. Are either of the other two also under discussion?
Related posts
- The Rust I wanted had no future
- Safer Enums in Go
- Saving a Third of Our Memory by Re-Ordering Go Struct Fields
- V(vlang) 0.2 Is Out
- I'm coming from Java and I have been told that I'm writing go like I'm writing Java. Basically creating structs, injecting fields, and attaching methods. What else can I do?