rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
gravicappa has joined #ocaml
mbuf has joined #ocaml
zebrag has quit [Quit: Konversation terminated!]
rgrinberg has joined #ocaml
waleee has quit [Ping timeout: 256 seconds]
rawley has quit [Remote host closed the connection]
vicfred has joined #ocaml
mro has joined #ocaml
mro has quit [Remote host closed the connection]
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
mro has joined #ocaml
xgqt has quit [Ping timeout: 260 seconds]
xgqt has joined #ocaml
mro has quit [Remote host closed the connection]
waleee has joined #ocaml
mro has joined #ocaml
waleee has quit [Ping timeout: 260 seconds]
mro has quit [Remote host closed the connection]
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
troydm has quit [Ping timeout: 256 seconds]
mro has quit [Remote host closed the connection]
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
troydm has joined #ocaml
olle has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
salkin has joined #ocaml
vicfred has quit [Quit: Leaving]
kaph_ has quit [Read error: Connection reset by peer]
kaph has joined #ocaml
bartholin has joined #ocaml
mro has quit [Remote host closed the connection]
<theblatte>
ocaml.org doesn't show 4.14.0 in the "news", only 4.13.1. Also going manually (or from the "Releases" page) to https://ocaml.org/releases/4.14.0.html gives the wrong navigation tree at the top of the page: it shows
<theblatte>
Home Releases OCaml 4.13.0
<theblatte>
Home > Releases > OCaml 4.13.0
<theblatte>
and this chan needs a /topic update too :)
bobo has joined #ocaml
spip has quit [Ping timeout: 256 seconds]
<olle>
4.14? Moving fast!
<octachron>
theblatte, I send a fix, that should be fixed soon, thanks!
<theblatte>
octachron: great, thanks!
bartholin has quit [Ping timeout: 272 seconds]
bartholin has joined #ocaml
notnotdan has joined #ocaml
<d_bot>
<tjltjl> ocaml-in-python looks really interesting and useful...
<d_bot>
<josé> its a lock file just a simple lock file
<d_bot>
<josé> how can't that even be done right let alone encouraged
<d_bot>
<josé> how does the lock file end up only containing the versions of thepackages by default
<d_bot>
<josé> how? literally HOW?
<d_bot>
<josé> that is absolutely useless
<d_bot>
<josé> and makes me question the integrity of opam
<d_bot>
<josé> the 2 hour discussion we had the other day is absolutely rendered useless by ths
<d_bot>
<NULL> What's the problem ?
<d_bot>
<josé> the problem is
<d_bot>
<josé> the ~~~ lockfile
<d_bot>
<josé> opam generates
<d_bot>
<josé> just contains the versions of the dependecies
<d_bot>
<josé> HOW IS THAT A LOCK FILE
<companion_cube>
🤷
<companion_cube>
lockfiles have been added relatively recently to opam, and sadly opam-repo isn't lockfile-friendly because sometimes the packages change
<d_bot>
<josé> im honestly just beyond and completely give up on trying to create a nix library for projects relying on opam
<d_bot>
<josé> it doesn't make sense why it wasnt even introduced on the creation of opam
<d_bot>
<josé> nor enforced by default then
<companion_cube>
well back then, lockfiles weren't that popular
<companion_cube>
I think they were mostly a thing in ruby, maybe node.js?
<d_bot>
<josé> oh so it didnt simply make sense at all?
<d_bot>
<josé> it was only recently? 2019 is recent?
<d_bot>
<josé> nor cant i even work with esy in anyway due to its nature
<d_bot>
<josé> it really sucks to see the state of things when i really am into the language
mro has joined #ocaml
<d_bot>
<andreypopp> I personally see ocaml package ecosystem as very well designed and implemented — opam registry is curated, the CI runs on reverse dependencies when package version is being bumped.
<d_bot>
<andreypopp> There are annoynances but overall it works very well (much better than most of the ecosystems which have lockfiles) in my experience
<d_bot>
<josé> oh really
<d_bot>
<josé> better than most ecosystems? which have lockfiles
<d_bot>
<josé> oh really
<d_bot>
<josé> 😭
<d_bot>
<josé> javascript
<d_bot>
<josé> javascript nodejs
<d_bot>
<josé> the language i despise the most is better than this
<companion_cube>
@andreypopp curation is good, but it should still have immutable packages
<Corbin>
Gentoo's ports tree had lockfile-style hashes in the mid-2000s. Nix is over a decade old. But it's common for language-specific package managers to not properly handle the actual difficulties of package management.
<companion_cube>
fixing a package should involve incrementing an echo, not modifying in place
<companion_cube>
lockfiles are just… good
<d_bot>
<andreypopp> @companion_cube yeah, that's the annoynace, this is why esy locks entire opam metadata
<d_bot>
<josé> its something soo obvious and basic to have
<companion_cube>
it wasn't obvious 10 years ago
<companion_cube>
esp. since opam was started (at least partly) by people from the debian community (Roberto di Cosmo)
<companion_cube>
so, it's more about constraint solving, than lockfiles and other language-specific PM features
<d_bot>
<andreypopp> @josé what exactly are you trying to do with nix and opam? have you seen opam2nix?
<d_bot>
<josé> opam2nix is garbage
olle has quit [Remote host closed the connection]
<d_bot>
<josé> My messages are taking ages to send
<d_bot>
<josé> Nix and opam don't go in hand in hand
Anarchos has joined #ocaml
<d_bot>
<josé> Opam2niz tries to solve the issue but it fialed miserably from where it stands at least from what I see
<d_bot>
<josé> It's not the fault of the library itself but rather
<d_bot>
<josé> It just did it wrong really
<d_bot>
<josé> Approached it the wrong way
<d_bot>
<josé> a
<d_bot>
<josé> I honestly just give at this point, it's either creating my own pm with nix or waiting months if not years for something to happen on the opam side
<d_bot>
<josé> 👋
bartholin has quit [Quit: Leaving]
<companion_cube>
:/
mro has quit [Remote host closed the connection]
mbuf has quit [Quit: Leaving]
<Corbin>
josé: FWIW I also gave up on that integration, and instead I hardcode whatever I need. ocamlPackages is relatively plush, so it hasn't been an issue for me personally, but I know it's irritating whenever something's missing from nixpkgs.
vicfred has joined #ocaml
rgrinberg has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Anarchos has joined #ocaml
mro has joined #ocaml
<d_bot>
<Bluddy> lockfiles are absolutely essential for dynamic languages since anything could be broken at any moment. they also end up being smart in general, but you can understand why they weren't prioritized.
<d_bot>
<Bluddy> similar to the way monads were only really explored once the need existed in haskell due to purity
<d_bot>
<Bluddy> necessity is the mother etc
Tuplanolla has joined #ocaml
bobo has quit [Ping timeout: 272 seconds]
waleee has joined #ocaml
bobo has joined #ocaml
mro has quit [Ping timeout: 272 seconds]
<companion_cube>
turns out they're also useful for static languages, e.g. rust
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<d_bot>
<Anna> Hey guys! I love coding
Anarchos has quit [Quit: Vision[]: i've been blurred!]
rgrinberg has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<d_bot>
<mbacarella> samesies
rgrinberg has joined #ocaml
motherfsck has joined #ocaml
<sleepydog>
fwiw, I find the opam importer for guix to work pretty well
gravicappa has quit [Ping timeout: 260 seconds]
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<d_bot>
<Alistair> Anyone know some cool OCaml code fractals? e.g. `e_n = let id x = x in id id id ... id` where `n` `id`s are applied?
<d_bot>
<NULL> What do you mean by fractals ?
<d_bot>
<Alistair> An expression that you can make infinitely big (using some repeated pattern) using an inductive variable e.g. `n` in the case above
<d_bot>
<NULL> `let f ~f = f in f 0 0 0 0...` is one I like
<d_bot>
<NULL> You can write pretty much any list of terms in there