companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 5.3.0 released: https://ocaml.org/releases/5.3.0 | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
Haudegen has quit [Quit: Bin weg.]
Frostillicus has joined #ocaml
amadaluzia has quit [Read error: Connection reset by peer]
<discocaml> <shalokshalom> Mlton seems to have a similar build story
<discocaml> <yawaramin> does it? they don't have a TLS cert and i don't feel like overriding my browser's warning 🤷‍♂️
amadaluzia has joined #ocaml
<discocaml> <yawaramin> also from what i heard the compiler is famously slow
<discocaml> <yawaramin> OCaml brings together a lot of different little benefits that, individually don't seem that big, but once you put them together it's hard to give them up
<discocaml> <polyml> you can get executables pretty easily from MLton, MLKit, PolyML, SML#, etc
<discocaml> <yawaramin> how easily? like `dune build`?
<discocaml> <polyml> They don't have a build manager like dune, but `polyc project.sml` `mlkit project.mlb` `mlton project.mlb`, etc
amadaluzia has quit [Quit: ZNC 1.10.1 - https://znc.in]
amadaluzia has joined #ocaml
<discocaml> <shalokshalom> The compiler is famously the fastest one for SML
<companion_cube> The one producing the fastest code rather
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
Frostillicus has quit [Ping timeout: 252 seconds]
Frostillicus has joined #ocaml
YuGiOhJCJ has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
toastal has joined #ocaml
amadaluzia has quit [Read error: Connection reset by peer]
amadaluzia has joined #ocaml
nirvdrum7410 has joined #ocaml
nirvdrum741 has quit [Ping timeout: 276 seconds]
nirvdrum7410 is now known as nirvdrum741
Frostillicus has quit [Ping timeout: 276 seconds]
YuGiOhJCJ has quit [Ping timeout: 244 seconds]
toastal has left #ocaml [#ocaml]
toastal has joined #ocaml
YuGiOhJCJ has joined #ocaml
toastal has left #ocaml [#ocaml]
casastorta has quit [Ping timeout: 260 seconds]
casastorta has joined #ocaml
<discocaml> <froyo> a tls cert is only useful if you're sending data anyway. the website is read-only.
toastal has joined #ocaml
humasect has joined #ocaml
humasect has quit [Remote host closed the connection]
Serpent7776 has joined #ocaml
casastorta has quit [Ping timeout: 260 seconds]
casastorta has joined #ocaml
casastorta has quit [Remote host closed the connection]
casastortaAway has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastorta has joined #ocaml
casastortaAway has joined #ocaml
humasect has joined #ocaml
humasect has quit [Ping timeout: 252 seconds]
toastal has left #ocaml [#ocaml]
toastal has joined #ocaml
bartholin has joined #ocaml
bartholin has quit [Quit: Leaving]
Frostillicus has joined #ocaml
Haudegen has joined #ocaml
humasect has joined #ocaml
toastal has left #ocaml [#ocaml]
humasect has quit [Ping timeout: 248 seconds]
Tuplanolla has joined #ocaml
<discocaml> <contificate> Secret exclusive forum if you're in the inner circle, the secret SML society
<discocaml> <JM> That's the easy part, what does it look like once I split my code in 5 different lib/modules and add 10 dependencies?
<discocaml> <contificate> MLton's build systems is simple enough that you can get different semantics from the order in which you list files in the `mlb` file - since it just concatenates all the files together, you can use file ordering to determine which definition shadows another - lol
<discocaml> <contificate> It's kind of unfortunate that MLton never seemed to get any way to kind of serialise much of the processing of the MLbasis library - for a simple hello world, you concatenate the entire base library before your call to `print` and then it optimises and eliminates almost all of what it's dealing with
toastal has joined #ocaml
casastortaAway has quit [Ping timeout: 260 seconds]
humasect has joined #ocaml
casastorta has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastorta has joined #ocaml
casastortaAway has joined #ocaml
itszor has joined #ocaml
zor has quit [Ping timeout: 240 seconds]
_jbrown_ has joined #ocaml
itszor has quit [Ping timeout: 240 seconds]
itszor has joined #ocaml
nirvdrum741 has quit [Ping timeout: 248 seconds]
_jbrown_ has quit [Ping timeout: 265 seconds]
amadaluzia has quit [Ping timeout: 252 seconds]
humasect has quit [Remote host closed the connection]
Anarchos has joined #ocaml
humasect has joined #ocaml
YuGiOhJCJ has quit [*.net *.split]
chiselfuse has quit [*.net *.split]
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Frostillicus has quit [Ping timeout: 248 seconds]
casastortaAway has quit [Ping timeout: 248 seconds]
chiselfuse has joined #ocaml
casastortaAway has joined #ocaml
casastorta has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastortaAway has quit [Remote host closed the connection]
casastorta has joined #ocaml
casastortaAway has joined #ocaml
Frostillicus has joined #ocaml
toastal has quit [Ping timeout: 240 seconds]
agentcasey has quit [Ping timeout: 276 seconds]
Frostillicus has quit [Ping timeout: 276 seconds]
Frostillicus has joined #ocaml
johnridesabike has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
amadaluzia has joined #ocaml
agentcasey has joined #ocaml
casastortaAway has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastorta has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastorta has joined #ocaml
casastortaAway has joined #ocaml
amadaluzia has quit [Ping timeout: 252 seconds]
humasect has quit [Remote host closed the connection]
amadaluzia has joined #ocaml
Humean has quit [Ping timeout: 260 seconds]
Haudegen has joined #ocaml
humasect has joined #ocaml
Frostillicus has quit [Remote host closed the connection]
Frostillicus has joined #ocaml
humasect has quit [Ping timeout: 245 seconds]
euphores has joined #ocaml
<discocaml> <yawaramin> > Discourage open upper/lower bounds on dependency versions. Packages (including ports of Opam packages) will be versioned with semver.
<discocaml> <yawaramin> agreed!
Frostillicus has quit [Ping timeout: 245 seconds]
Anarchos has joined #ocaml
Frostillicus has joined #ocaml
<companion_cube> Is that about dune?
<discocaml> <deepspacejohn> apparently forwarded messages don't go through the IRC bridge.
Haudegen has quit [Quit: Bin weg.]
olle has quit [Ping timeout: 252 seconds]
<companion_cube> Sounds interesting, hu
<companion_cube> Although breaking from dune is one step too far in my book
Humean has joined #ocaml
euphores has quit [Quit: Leaving.]
euphores has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
Serpent7776 has quit [Ping timeout: 240 seconds]
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
bartholin has joined #ocaml
malte has quit [Ping timeout: 276 seconds]
malte has joined #ocaml
malte has quit [Ping timeout: 276 seconds]
malte has joined #ocaml
bartholin has quit [Remote host closed the connection]
bartholin has joined #ocaml
humasect has joined #ocaml
bartholin has quit [Read error: Connection reset by peer]
Frostillicus has quit [Ping timeout: 265 seconds]
Serpent7776 has joined #ocaml
bartholin has joined #ocaml
humasect has quit [Remote host closed the connection]
Frostillicus has joined #ocaml
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #ocaml
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #ocaml
bartholin has quit [Read error: Connection reset by peer]
Frostillicus has quit [Ping timeout: 245 seconds]
humasect has joined #ocaml
Frostillicus has joined #ocaml
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #ocaml
bartholin has joined #ocaml
humasect has quit [Ping timeout: 252 seconds]
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #ocaml
szkl has joined #ocaml
Mister_Magister_ has joined #ocaml
Mister_Magister has quit [Ping timeout: 248 seconds]
Mister_Magister_ is now known as Mister_Magister
Frostillicus has quit [Ping timeout: 252 seconds]
Mister_Magister_ has joined #ocaml
Mister_Magister has quit [Ping timeout: 276 seconds]
Mister_Magister_ is now known as Mister_Magister
cr1901_ has joined #ocaml
cr1901 has quit [Ping timeout: 260 seconds]
bartholin has quit [Remote host closed the connection]
bartholin has joined #ocaml
<discocaml> <shadowkestrel> @gridbugs seems to be the one behind it :3
<discocaml> <shadowkestrel> im definitely interested, although i dont immediately see logic for an equivalent to opam's switches - if they end up being excluded, that'd be a pretty big turn off for me
Serpent7776 has quit [Quit: leaving]
<discocaml> <yawaramin> the readme mentions that it's conceptually more similar to cargo, so that would mean each project would essentially be its own 'switch'
<discocaml> <yawaramin> if they keep the compiler separate from the packages as they are talking about, it may be possible to spin up projects aka 'switches' very quickly and efficiently
<discocaml> <deepspacejohn> I feel like making per-project switches is a common question from newcomers, and I wonder how much of it is just being used to other package managers. In OCaml a global switch works really well IMO, especially at the beginner level where you're not juggling a lot of incompatible dependencies.
<discocaml> <Kali> ocaml compiles way too slowly for me to consider per-project switches unless the compiler could somehow be cached for compatible versions
<discocaml> <yawaramin> well that's what the relocatable compiler work is trying to do, make it possible to just copy an installed compiler to another directory. but...it's been in the works for years
<discocaml> <yawaramin> per-project switches are needed by by people want to work on different projects that have different and conflicting package set requirements, maybe not everyone feels that pain
<discocaml> <Kali> i wonder if some chroot wizardry would be able to magically relocate a compiler without having to change anything
<discocaml> <Kali> unfortunately it would be pretty platform specific
<discocaml> <deepspacejohn> you can symlink local switches, which isn't the same thing but if you need switch X for projects A and B and switch Y for projects C D and E then you only need to really to make two local switches.
<discocaml> <yawaramin> i tried with btrfs clones but unfortunately it didn't work https://discuss.ocaml.org/t/can-i-use-an-opam-switch-as-an-immutable-base-of-another-one/9879/15?u=yawaramin
<discocaml> <Kali> i feel like plan 9 namespaces could do it, but i don't think there's any ocaml support for plan 9 at the moment
<discocaml> <shadowkestrel> maybe you could do some $PATH shenanigans in place of chroot
<discocaml> <shadowkestrel> i guess a bit like how opam already does
<discocaml> <._null._> You can use the system compiler if you don't like compiling the compiler
johnridesabike has quit [Quit: johnridesabike]
<discocaml> <yawaramin> the OCaml team are quite adamant that PATH shenanigans won't work and will make things worse
<companion_cube> Per project switches are still where it's at tbh
Humean has quit [Read error: Connection reset by peer]
humasect has joined #ocaml
humasect has quit [Ping timeout: 276 seconds]
Armael has quit [Ping timeout: 272 seconds]
Armael has joined #ocaml
humasect has joined #ocaml
Frostillicus has joined #ocaml
infinity0 has quit [Ping timeout: 276 seconds]
humasect has quit [Remote host closed the connection]
chiselfuse has quit [Remote host closed the connection]
Frostillicus has quit [Ping timeout: 265 seconds]
chiselfuse has joined #ocaml
Frostillicus has joined #ocaml
bartholin has quit [Remote host closed the connection]
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #ocaml
itszor has quit [Read error: Connection reset by peer]
itszor has joined #ocaml
Frostillicus has quit [Ping timeout: 276 seconds]
agentcasey has quit [Remote host closed the connection]
agentcasey has joined #ocaml
Frostillicus has joined #ocaml
Frostillicus has quit [Ping timeout: 252 seconds]
Anarchos has quit [Quit: Vision[]: i've been blurred!]