What are your thoughts on this comparison? https://github.com/sidkshatriya/me/blob/master/007-My-Thoughts-on-OCaml-vs-Haskell-Rust-2023.md
West Asia - Communist - international politics - anti-imperialism - software development - Math, science, chemistry, history, sociology, and a lot more.
What are your thoughts on this comparison? https://github.com/sidkshatriya/me/blob/master/007-My-Thoughts-on-OCaml-vs-Haskell-Rust-2023.md
Tell us more about unison
I know double semicolons are a thing, but I’ve never had to use them. I forget what they’re for, but yeah it’s supposed to be an escape hatch for something that shouldn’t be happening iirc.
The curried snd uncurried functions… Maybe you are confusing with SML, because everything in ocaml is curried by default. Though admittedly the standard library could be more complete, but I personally am happy to use third party dependencies for less common things.
Sad I had to scroll to the end to see this.
Ocaml is brilliant and has the nicest type features. It’s almost like Haskell but more approachable imo.
Striking terror in the hearts of genocidal invaders is a good thing yeah
I have read that it is faster, though I have not tested it myself. Personally, my initial reason to use it was just to try something new and explore the unix world. My reason for staying is that it is a very simple init system that is pleasant to work with. It made me understand what an init system is and use it a lot more.
Systemd is good if you just want something invisible and you do not want to mess too much with an init system unless you have to. Everything integrates with it
OpenRC is nicer if you want to write your own init scripts. It is very well documented also.
For #2,
For gaming, if you use steam, you may not face more than the following:
For programming, you will love your life because everything programming is way easier on Linux.
For #1, I’ve made the realization that most distros are lightweight skins or addons on top of another distro. Most of the time, if you start with the base distro, all you have to do is install some apps, change some configurations, and suddenly you have that other distro. It is much easier than doing a reinstallation.
If you filter out all of these distros that only do a little on top of an existing, you’re left with a quite small number actually. I’d bet it’s less than 10 that are not super niche. Fedora, Arch, debian, gentoo, nixos are the big ones. There’s some niche ones, like void Linux and Alpine.
So I’d say if you try all of those, you don’t need to try any more 😁
First time Linux user you mean?
I wouldn’t recommend it, unless you can navigate the terminal well. When you install arch, it installs no desktop environment, only the ability to talk to a terminal.
It’s technically possible and very doable with some googling, but I wouldn’t recommend it.
Very much the same. I was terrified of regex, now I love it
Depends on the distribution, many package managers can filter by license. So you can find anything that doesn’t have an open source license.
So what happens, does it just not boot? Any error messages?
Just come ask here when you have trouble, and we’ll try to help.
When troubleshooting, the biggest thing is searching the web honestly. But some more things to help you out: look for logs. Linux has loads of logs and sometimes can tell you how to fix the problem.
Logs may not be immediately apparent. Some programs have their own log files that you can look into. Sometimes, if you run the program from the terminal, it’ll print out logs there. Otherwise, you read look through journalctl, although this has logs for everything so might be harder to search.
Another useful tip, particularly for system tools and terminal tools, is manual pages. Just run man ls
and replace ls with any command, you’ll get the documentation on how to use that tool.
OpenRC btw 😁
There are many ways to do this, but the next up from users is using groups!
For each file or data directory, create a group that owns it. This group should have the service’s user as member. Then create a user for running the backups, and add it to all these groups.
The benefit of this is you don’t have to use root, and you have an association of directory to group that you can always change. You can for example grant a user access to a data directory by just adding it to its group.
I use gentoo btw
Please do not care about people shitting on popular distros. As a gentoo user myself, it’s as niche as it gets, but I will wholeheartedly recommend Ubuntu and mint.
This is actually exactly what I asked for, thank you!!
As someone who is not deep into type theory or functional programming, can you please explain why you mean by “ergonomic overloading”?
My understanding is that ocaml mitigates the need for type classes through its more advanced module system. So far I have been enjoying the use of OCaml modules, so I’m curious what exactly I’m missing out on, if any.
Thanks for taking the time to talk with me btw!