1,436 karma · joined September 11, 2011
I like how this can be interpreted two ways, depending on whether you place loved ones above governance, or vice versa.
At some point a regulation is no longer worth the weight in the overhead it imposes. Even if all regulation was effective, at some point the collective burden would be too high.
Sadly, this also means that some bad behaviour is inescapable at the margins. There are always a few people looking for an angle to make a quick buck in a certain way, yet not enough for a regulation to be supported.
If you use type guards correctly the performance can be surprisingly good. Not C/C++/Rust/Go/Java good, but not too far off either. This is definitely a corner-case though.
I wanted to use OCaml since 2002, since it was a GC'd language with good performance, achieving a lot with relatively few lines of code. Being a language nerd, I was (am?) positively inclined to the language. Yet there was always something that made it notably less pleasant to solve my current problem in than in than some other language.
If it had trouble getting traction with me, that's bad news.
Meanwhile the mainstream has progressed a lot since 2000. GC is the standard, closures are normal, pattern matching and destructuring are increasingly so. While HM-style type inference is not mainstream, local type inference is (and I'm no longer convinced that global type inference is the way). Algebraic data types aren't unusual anymore.
A few years back I just threw in the towel and went with Rust; this happened after I volunteered to improve OCaml's gdb support (including DWARF hell), which went nowhere. I wish Rust compiled faster, and a GC'd language is usually more productive for my problems, but in every other regard it stole what should have been OCaml's thunder. And when popular successor languages eventually appear, they'll do it even better.
Beginners face the following problems: there's multiple standard libraries, many documents are barely more than type signatures, and data structures aren't printable by default. Experts also face the problem of a very tiny library ecosystem, and tooling that's often a decade behind more mainstream languages (proper gdb support when?). OCaml added multicore support recently, but now there is the whole Eio/Lwt/Async thing.
I used to be a language nerd long ago. Many a fine hour spent on LtU. But ultimately, the ecosystem's size dwarfs the importance of the language itself. I'm sympathetic, since I'm a Common Lisp man, but I don't kid myself either: Common Lisp isn't (e.g.) Rust. I like hacking with a relic of the past, and that's okay too.
You need to get out more for your own good.
Currently leaning towards Debian Testing, but that might depend on my testing of Slackware now. I use Arch daily in WSL, but I've have had enough breakages that I don't want it as my primary OS.
Instead of an hour of extra work every day, you're doing math instead. At minimum wage that's around two grand lost over a year. Even if MathAcademy was free.
Also, I recall seeing MathAcademy being free if you can demonstrate financial need.
It'd be nice to have something cleaner than Common Lisp, and a much smaller image size. If it has decent performance too, I'm sold.
Maybe they’ve finally recognized and fixed the real problem. Maybe not. We will see in future performance.
I have a SwissMicro DM-42, which when setup properly is similar to a HP-48, just minus graphing capabilities. Still want a HP-48 refresh.
In theory I was okay with the indexing. In practice it was an absolute PITA.
Plus there were other numerous papercuts; it felt like Lua was actively fighting me every step of the way. I went from liking Lua to absolutely despising it.
In the end I switched to C++11, which amazingly was much more productive. As in night-and-day difference.
Also: I too really hope they expand into physics.
Furthermore, those wheels aren't necessarily interoperable the way something built into the standard library would be; it's not just a convenience.