<discocaml>
<functionalprogramming> is it recommended to use local switches or global ones
<discocaml>
<.korven.> local ones per project are usually the way to go
jabuxas has quit [Ping timeout: 264 seconds]
myrkraverk_ has joined #ocaml
myrkraverk has quit [Ping timeout: 252 seconds]
bartholin has joined #ocaml
mbuf has joined #ocaml
<reynir>
local switches has the benefit that dependency constraints in different projects don't interfere. The downside is that each opam switch can be gigabytes in size.
<discocaml>
<.korven.> and it takes time to build the dependencies over and over for new switches. I think there's opam-bin to alleviate that problem? not sure. But something like `pnpm` global cache would be neat
myrkraverk__ has joined #ocaml
myrkraverk_ has quit [Read error: Connection reset by peer]
myrkraverk__ has quit [Read error: Connection reset by peer]
myrkraverk__ has joined #ocaml
myrkraverk__ has quit [Read error: Connection reset by peer]
myrkraverk__ has joined #ocaml
Serpent7776 has joined #ocaml
bartholin has quit [Quit: Leaving]
myrkraverk__ has quit [Read error: Connection reset by peer]
myrkraverk__ has joined #ocaml
<discocaml>
<._null._> I wouldn't consider local switches as the universal solution, you can often do just fine with a global switch
<reynir>
you can also link switches (opam switch link) so you can reuse local switches between projects for example
olle has joined #ocaml
<Leonidas>
korven: you can have sth a bit like this by enabling the dune cache
dnh has joined #ocaml
myrkraverk_ has joined #ocaml
myrkraverk__ has quit [Read error: Connection reset by peer]
myrkraverk_ has quit [Read error: Connection reset by peer]
myrkraverk__ has joined #ocaml
myrkraverk__ has quit [Ping timeout: 264 seconds]
myrkraverk has joined #ocaml
myrkraverk has quit [Remote host closed the connection]
myrkraverk has joined #ocaml
myrkraverk has quit [Remote host closed the connection]
myrkraverk has joined #ocaml
myrkraverk has quit [Remote host closed the connection]
jabuxas has joined #ocaml
a51 has joined #ocaml
Square2 has joined #ocaml
myrkraverk has joined #ocaml
ania123 has joined #ocaml
alexherbo2 has joined #ocaml
waleee has joined #ocaml
dnh has quit [Ping timeout: 256 seconds]
dnh has joined #ocaml
jabuxas has quit [Ping timeout: 256 seconds]
waleee has quit [Quit: WeeChat 4.1.2]
ania123 has quit [Quit: Client closed]
a51 has quit [Quit: WeeChat 4.2.1]
ania123 has joined #ocaml
ania123 has quit [Client Quit]
a51 has joined #ocaml
ania123 has joined #ocaml
alexherbo2 has quit [Remote host closed the connection]
alexherbo2 has joined #ocaml
olle has quit [Ping timeout: 240 seconds]
alexherbo2 has quit [Remote host closed the connection]
jabuxas has joined #ocaml
mbuf has quit [Quit: Leaving]
bartholin has joined #ocaml
Tuplanolla has joined #ocaml
ania123 has quit [Quit: Client closed]
Square2 has quit [Ping timeout: 240 seconds]
waleee has joined #ocaml
a51 has quit [Quit: WeeChat 4.2.1]
oriba has joined #ocaml
a51 has joined #ocaml
Anarchos has joined #ocaml
ania123 has joined #ocaml
jabuxas has quit [Ping timeout: 260 seconds]
<Anarchos>
weird test in the ocaml/testsuite/tests/lib-format/mx_pr586_par2 : it fails randomly
<Anarchos>
99.39% ot ifs output is 42.0f and others are 42.f+01
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Square2 has joined #ocaml
torretto_ has quit [Quit: WeeChat 4.1.1]
ania123 has quit [Quit: Client closed]
torretto has joined #ocaml
bartholin has quit [Quit: Leaving]
a51 has quit [Quit: WeeChat 4.2.1]
Serpent7776 has quit [Ping timeout: 256 seconds]
motherfsck has quit [Quit: quit]
<discocaml>
<contextfreebeer> I only use local switch for Coq and fstar that rely heavily on a specific version of the compiler, otherwise I just use the global switch and there are pretty much no issues
<discocaml>
<contextfreebeer> well they don't require a specific version per se but only support a fairly narrow spectrum AFAIK, and don't support 5 yet
dnh has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<discocaml>
<tornato> Unrelated, but have you ever used idris, it looks pretty neat and has dependent types
<discocaml>
<tornato> Trying to figure out which dependently typed language is worth learning
jabuxas has joined #ocaml
<discocaml>
<Kali> learn both or all three honestly
<discocaml>
<Kali> - the documentation for F\* is pretty sparse and just straight-up broken in some places, but it's got an smt solver so it makes some programs far easier to prove, and also uses *very* ocaml-like syntax
<discocaml>
<Kali> - idris has the nicest documentation but does not use an smt solver and has a haskell-style syntax
<discocaml>
<Kali> - coq is typically much more proof-oriented than programming-oriented, so you'll get more exposure to actual proofs rather than programming with a side of proofs; its documentation is fairly good but too technical sometimes (use the Software Foundations book instead) and its syntax is vaguely like ocaml's—for expressions anyway
<discocaml>
<tornato> Interesting, I'm dumb and don't know what an SMT solver is, time to Google that😆