casastortaAway has quit [Quit: ZNC 1.10.1 - https://znc.in]
bartholin has joined #ocaml
casastorta has joined #ocaml
casastortaAway has joined #ocaml
Serpent7776 has joined #ocaml
marijan has left #ocaml [#ocaml]
marijanp has joined #ocaml
marijanp has left #ocaml [#ocaml]
marijan has joined #ocaml
Haudegen has joined #ocaml
luc4 has joined #ocaml
marijan has left #ocaml [Disconnected: Hibernating too long]
myrkraverk__ has quit [Read error: Connection reset by peer]
myrkraverk has joined #ocaml
Frostillicus has joined #ocaml
casastortaAway has quit [Ping timeout: 252 seconds]
casastortaAway has joined #ocaml
Frostillicus has quit [Ping timeout: 252 seconds]
Frostillicus has joined #ocaml
marijan has joined #ocaml
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
Frostillicus has quit [Ping timeout: 245 seconds]
Frostillicus has joined #ocaml
Frostillicus has quit [Ping timeout: 260 seconds]
luc4 has quit [Quit: Konversation terminated!]
copy has quit [Server closed connection]
copy has joined #ocaml
Frostillicus has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
johnridesabike has joined #ocaml
casastortaAway has quit [Ping timeout: 265 seconds]
jutty has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
casastortaAway has joined #ocaml
Frostillicus has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
marijan has left #ocaml [Disconnected: Hibernating too long]
Serpent7776 has quit [Ping timeout: 272 seconds]
berberman has quit [Server closed connection]
berberman has joined #ocaml
Haudegen has joined #ocaml
polykernel has quit [Remote host closed the connection]
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
zor has quit [Read error: Connection reset by peer]
zor has joined #ocaml
luc4 has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
polykernel has joined #ocaml
polykernel_ has joined #ocaml
Serpent7776 has joined #ocaml
polykernel has quit [Ping timeout: 252 seconds]
polykernel_ is now known as polykernel
Frostillicus has quit [Read error: Connection reset by peer]
marijan has joined #ocaml
nore has quit [Server closed connection]
nore has joined #ocaml
<olle>
'Software engineering has no method to decide if the predicate "exceptions add value to a programming language" is true or false.'
<olle>
Would you agree? Why or why not?
toastal has joined #ocaml
<olle>
It's a bit funny to me how some langs remove exceptions, like Golang, while others add _more_ exception-like features, like OCaml with effects.
<olle>
"Value" can perhaps be defined as increase code quality and maintainability.
<olle>
increased*
Tuplanolla has joined #ocaml
euphores has joined #ocaml
humasect has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
Anarchos has joined #ocaml
Anarchos has quit [Client Quit]
hanker has quit [Ping timeout: 260 seconds]
Anarchos has joined #ocaml
Frostillicus has joined #ocaml
itszor has joined #ocaml
tremon has joined #ocaml
zor has quit [Ping timeout: 260 seconds]
Frostillicus has quit [Ping timeout: 252 seconds]
adrien has quit [Server closed connection]
adrien has joined #ocaml
<discocaml>
<rmu.> i think you'd love nix, maybe give it a shot? It'll be painful, but you'll realize sooner or later "nix is bad, but it's far better than the other options".
<discocaml>
<rmu.> tho ocaml with nix is quite annoying
<discocaml>
<gooby_diatonic> My main concern is how it interacts with existing package managers, in the sense that I don't want it creating a copy of every system package because it wants to virtualise it. Is that what happens or?
<discocaml>
<rmu.> it does not create a copy, it provides its own
<discocaml>
<rmu.> depending on the platform, and os i guess hwen it comes to macOS
<discocaml>
<astreamingcomesacrossthesky> Maybe Nix has some workaround for this but I found that trying to manage dev environments that rely on native compilation stuff (GCC etc) pretty darn annoying on Guix, especially when some things were provided by an external package manager and some by Guix
<discocaml>
<astreamingcomesacrossthesky> I'm aware that that's not how you're supposed to use these kinds of tools but sometimes they just don't provide the packages you need
<discocaml>
<rmu.> if it is provided by an external package manager, you'd usually use/implement a 2nix solution
<discocaml>
<rmu.> are you referring to guix shell here? for dev environments?
<discocaml>
<astreamingcomesacrossthesky> I used to use Guix System, the counterpart to NixOS. I would run into issues like linker errors and other stuff that frankly I'm not knowledgeable enough to solve when mixing packages provided by Guix and elsewhere
<discocaml>
<astreamingcomesacrossthesky> The linker errors usually weren't too onerous but there was some other stuff I don't recall the details of
<discocaml>
<astreamingcomesacrossthesky> Yeah or stuff built from source
<discocaml>
<astreamingcomesacrossthesky> But it seems like Nix has way more machinery for dealing with this situation than Guix, not to mention all the extra packages it has
<discocaml>
<rmu.> i haven't used nixos in awhile, but i recall having same issues
<discocaml>
<rmu.>
<discocaml>
<rmu.> usually an escape hatch would be to use an fhs env but it isn't generally recommended
<discocaml>
<rmu.> otherwise manually fiddle with LD_LIBRARY_PATH pkg-config and so on.
<discocaml>
<rmu.> and yeah the nixpkgs repository is vastly larger than guix thats for sure
<discocaml>
<rmu.> pretty sure it's the biggest package repository
Anarchos has quit [Quit: Vision[]: i've been blurred!]
dmbaturin has quit [Server closed connection]
dmbaturin has joined #ocaml
luc4 has quit [Quit: Konversation terminated!]
<discocaml>
<befdn> olle: I'm not sure how much I buy into this idea (or if it is quite applicable in this exact situation), but The Rational Programmer is supposed to be a framework to assess language _pragmatics_ questions such as this one
Anarchos has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Anarchos has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Anarchos has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Anarchos has joined #ocaml
<discocaml>
<gooby_diatonic> Copy with regards to the existing packages from the system package manager, in my case dnf
<discocaml>
<gooby_diatonic> Since I'd effectively have two of each I presume
<discocaml>
<gooby_diatonic> It's not that bad since Nix shares one installation across environments
<discocaml>
<gooby_diatonic> Afaik anyways
Haudegen has joined #ocaml
<discocaml>
<manu_unter> Another Ctypes question:
<discocaml>
<manu_unter> how would I correctly bind an anonymous `struct` with a `typedef` in ctypes? say `typedef struct { ... } my_struct`
<discocaml>
<manu_unter> I tried the way from https://github.com/ocamllabs/ocaml-ctypes/pull/238 where they just append a `_` to the `structure` name, i.e. `let t = structure "_my_struct"`, and follow up with a `typedef "my_struct" t`, but that fails with errors about `_my_struct` being an undefined type - which it really is since the struct is anonymous.
<discocaml>
<manu_unter> I also tried calling `structure ""` instead, but that seems to not correctly find the C struct then.
<discocaml>
<manu_unter>
<discocaml>
<manu_unter> What's the correct way of doing this?
<discocaml>
<rmu.> it wouldn't be getting it from dnf no, so you'd be essentially having a copy yes one managed by each
Anarchos has quit [Quit: Vision[]: i've been blurred!]
bartholin has quit [Read error: Connection reset by peer]
euphores has quit [Ping timeout: 260 seconds]
pie_ is now known as ketchie_
ketchie_ is now known as pie_
Serpent7776 has quit [Ping timeout: 276 seconds]
Haudegen has quit [Quit: No Ping reply in 180 seconds.]
Haudegen has joined #ocaml
johnridesabike has quit [Quit: johnridesabike]
Tuplanolla has quit [Quit: Leaving.]
<discocaml>
<gooby_diatonic> Fair enough, I might still give it a try, although if it doesn't work great with OCaml not sure if I'd get much out of it
<discocaml>
<gooby_diatonic> I managed to get Docker working I think so at least my use-case rn is covered
<discocaml>
<gooby_diatonic> Though ig for web dev and such most use-cases will be those where you need a few running services to develop
Frostillicus has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
Frostillicus has quit [Ping timeout: 260 seconds]
marijan has left #ocaml [Error from remote client]
tomku has quit [Ping timeout: 252 seconds]
pi3ce has quit [Read error: Connection reset by peer]
<discocaml>
<yawaramin> https://devenv.sh/ is pretty good for that. you don't need to fully commit to Nix but it gives you many of the conveniences