companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 5.2.0 released: https://ocaml.org/releases/5.2.0 | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
rgrinberg has quit [Quit: My Unrecognized Mac has gone to sleep. ZZZzzz…]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 248 seconds]
myrkraverk has joined #ocaml
myrkraverk__ has quit [Ping timeout: 248 seconds]
Guest62 has quit [Quit: Client closed]
sand_dull has joined #ocaml
sand_dull has quit [Remote host closed the connection]
alfiee has joined #ocaml
Tuplanolla has quit [Quit: Leaving.]
alfiee has quit [Ping timeout: 248 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 245 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 248 seconds]
terrorjack45 has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack45 has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 272 seconds]
casastortaAway has joined #ocaml
xgqtd has joined #ocaml
xgqt has quit [Ping timeout: 252 seconds]
casastorta has quit [Remote host closed the connection]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 260 seconds]
agentcas- has joined #ocaml
agentcasey has quit [Ping timeout: 265 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 265 seconds]
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
alfiee has joined #ocaml
m5zs7k has quit [Ping timeout: 260 seconds]
alfiee has quit [Ping timeout: 272 seconds]
m5zs7k has joined #ocaml
Guest62 has joined #ocaml
humasect has joined #ocaml
humasect has quit [Client Quit]
myrkraverk_ has joined #ocaml
alfiee has joined #ocaml
myrkraverk has quit [Ping timeout: 272 seconds]
alfiee has quit [Ping timeout: 260 seconds]
mbuf has joined #ocaml
pi3ce has quit [Read error: Connection reset by peer]
pi3ce has joined #ocaml
Serpent7776 has joined #ocaml
alfiee has joined #ocaml
<Guest62> found a box with opam installed. It turned out: opam init ; opam install ppx_jane will downgrade from 5.3 to 5.2, likely one of the dependencies force that downgrade.
alfiee has quit [Ping timeout: 272 seconds]
<Guest62> for some reason opam show -f depends ppx_jane | cut -f 2 -d '"' | xargs --verbose -n1 opam show -f depends| grep -E '(^"ocaml"|compiler)' does not show which one forces the downgrade...
bartholin has joined #ocaml
polykernel has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 245 seconds]
<discocaml> <._null._> You can do `opam install ocaml.5.3.0 ppx_jane` and see what message you get
olle has joined #ocaml
Haudegen has joined #ocaml
bartholin has quit [Quit: Leaving]
dhil has joined #ocaml
alfiee has joined #ocaml
pi3ce has quit [Read error: Connection reset by peer]
alfiee has quit [Ping timeout: 272 seconds]
pi3ce has joined #ocaml
pi3ce has quit [Client Quit]
mange has quit [Remote host closed the connection]
pi3ce has joined #ocaml
mange has joined #ocaml
<Guest62> apparently it is bin_prot, but it is unclear which part of it wants < 5.3
<discocaml> <._null._> FTR, I can install ppx_jane on my 5.3.0 switch, so the issue must come from another package
<Guest62> What is the "suse" doing there?! https://opam.ocaml.org/packages/bin_prot/bin_prot.v0.17.0/
<Guest62> In other words, why would that matter?!
<Guest62> opam install has apparently no --do-it-anway knob to override such bogus constraints?
alfiee has joined #ocaml
<Guest62> Maybe the Leonidas in this channel did that to that pkg? Can you undo it please?
<discocaml> <._null._> You can force the installation by pinning the package and then editing the opam file of the pin
alfiee has quit [Ping timeout: 245 seconds]
myrkraverk has joined #ocaml
myrkraverk_ has quit [Ping timeout: 260 seconds]
<Guest62> how do I build the pinned and edited package? # Error: I don't know about package bin_prot (passed through --only-packages)
<discocaml> <sim642> There's also `--ignore-constraints-on`
<Guest62> what would be the syntax? =os-family or =available does not work
<Guest62> or =bin_prot
myrkraverk_ has joined #ocaml
myrkraverk has quit [Ping timeout: 252 seconds]
alfiee has joined #ocaml
mange has quit [Quit: Zzz...]
alfiee has quit [Ping timeout: 248 seconds]
myrkraverk has joined #ocaml
myrkraverk_ has quit [Ping timeout: 260 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
Inline has quit [Ping timeout: 265 seconds]
Inline has joined #ocaml
mbuf has quit [Quit: Leaving]
<discocaml> <leviroth> Why do you say it’s a “bogus constraint”? It was done for a reason, https://github.com/ocaml/opam-repository/pull/26154
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 272 seconds]
<Guest62> Sure it was done for a reason. A bogus one IMHO.
<Guest62> Given that it compiles just fine in "*suse*" elsewhere.
Anarchos has joined #ocaml
companion_cube has quit [Ping timeout: 252 seconds]
companion_cube has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 265 seconds]
ygrek has joined #ocaml
Guest62 has quit [Quit: Client closed]
Haudegen has joined #ocaml
polykernel has quit [Remote host closed the connection]
myrkraverk_ has joined #ocaml
polykernel has joined #ocaml
myrkraverk has quit [Ping timeout: 248 seconds]
alfiee has joined #ocaml
pie__ has joined #ocaml
alfiee has quit [Ping timeout: 244 seconds]
myrkraverk_ has quit [*.net *.split]
Haudegen has quit [*.net *.split]
pi3ce has quit [*.net *.split]
Serpent7776 has quit [*.net *.split]
euphores has quit [*.net *.split]
pie_ has quit [*.net *.split]
semarie has quit [*.net *.split]
ridcully has quit [*.net *.split]
Opus has quit [*.net *.split]
ski has quit [*.net *.split]
haesbaert has quit [*.net *.split]
polykernel has quit [Remote host closed the connection]
polykernel has joined #ocaml
Haudegen has joined #ocaml
myrkraverk_ has joined #ocaml
Serpent7776 has joined #ocaml
pi3ce has joined #ocaml
semarie has joined #ocaml
euphores has joined #ocaml
Opus has joined #ocaml
ridcully has joined #ocaml
ski has joined #ocaml
haesbaert has joined #ocaml
myrkraverk has joined #ocaml
myrkraverk_ has quit [Ping timeout: 252 seconds]
xgqtd is now known as xgqt
Anarchos has quit [Quit: Vision[]: i've been blurred!]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 272 seconds]
Haudegen has quit [Quit: Bin weg.]
dhil has quit [Ping timeout: 244 seconds]
m5zs7k has quit [Ping timeout: 248 seconds]
m5zs7k has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
pi3ce has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
olle has quit [Ping timeout: 272 seconds]
dhil has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 248 seconds]
alfiee has joined #ocaml
bartholin has joined #ocaml
alfiee has quit [Ping timeout: 244 seconds]
pi3ce has joined #ocaml
<bartholin> what is the motivation for conjunctions in polymorphic variant types (the & symbol) and is there an example where it is useful (even a toy example)?
<bartholin> I am talking about https://ocaml.org/manual/5.3/types.html
<bartholin> >Full specifications of variant tags are only used for non-exact closed types. They can be understood as a conjunctive type for the argument: it is intended to have all the types enumerated in the specification.
pi3ce has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
pi3ce has joined #ocaml
Tuplanolla has joined #ocaml
euphores has quit [Quit: Leaving.]
alfiee has joined #ocaml
pi3ce has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
euphores has joined #ocaml
alfiee has quit [Ping timeout: 264 seconds]
myrkraverk_ has joined #ocaml
dhil has quit [Ping timeout: 265 seconds]
myrkraverk has quit [Ping timeout: 248 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 245 seconds]
<discocaml> <Kali> i don't think ive ever seen them used
alfiee has joined #ocaml
<bartholin> thx
alfiee has quit [Ping timeout: 252 seconds]
<discocaml> <alyxshang> Btw, I wanted to just say how comfy this community is. Everyone's very kind. That's very refreshing and calming, to say the least. 🙏
spynx has joined #ocaml
<bartholin> but wait, in which case is it interesting to keep "t1 & t2", and not to compute the meet?
spynxic has quit [Remote host closed the connection]
<bartholin> afaik, ocaml only keeps "t1 & t2" if these two types are not unifiable
<bartholin> wait no
<bartholin> but the types are either unifiable or not
<bartholin> keeping the form "t1 & t2" is just postponing the unification for no reason
Anarchos has joined #ocaml
<bartholin> if I do let f c = ((function `A l -> l) c, (function `A l -> l) c), I get val f : [< `A of 'a & 'b ] -> 'b * 'a = <fun> but obviously 'a should be unified with 'b
<discocaml> <Kali> actually, i have seen them used once, but it was a very fringe use
<Anarchos> bartholin it is the meaning of 'a & 'b
<bartholin> I get a weird result if I annotate the argument with [< `A of 'a], the type becomes val f : [< `A of 'a & 'b & 'c ] -> 'b * 'c
chiselfuse has quit [Remote host closed the connection]
<Anarchos> bartholin you use `A isntead of A, so both sides are considered to belong to two different types
<bartholin> Anarchos: but in every case ocaml unify the types
chiselfuse has joined #ocaml
<Anarchos> bartholin yes indeed i am not skilled enough to answer more. But i think the `A instead of A is the clue.
LainExperiments has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 265 seconds]
rgrinberg has joined #ocaml
Armael has quit [Ping timeout: 252 seconds]
Armael has joined #ocaml
Everything has joined #ocaml
alfiee has joined #ocaml
Serpent7776 has quit [Ping timeout: 252 seconds]
alfiee has quit [Ping timeout: 252 seconds]
Everything has quit [Ping timeout: 265 seconds]
Everything has joined #ocaml
mange has joined #ocaml
bartholin has quit [Quit: Leaving]
chiselfuse has quit [Ping timeout: 264 seconds]
chiselfuse has joined #ocaml
ygrek has quit [Remote host closed the connection]
alfiee has joined #ocaml
Everything has quit [Quit: Lost terminal]
alfiee has quit [Ping timeout: 246 seconds]