<d_bot>
<tnkhanh> hi, where does ocamlopt find libraries? my c++ compiler can run with `-l<lib>` but ocamlopt gives me `/usr/bin/ld: cannot find -l<lib>`
mro has joined #ocaml
<d_bot>
<tnkhanh> I'm using opam
<d_bot>
<tnkhanh> `ocamlopt.opt` to be exact
mro has quit [Remote host closed the connection]
olle has joined #ocaml
Everything has quit [Quit: leaving]
salvi has joined #ocaml
salvi has quit [Quit: leaving]
glassofethanol has joined #ocaml
salvipeter has joined #ocaml
salvipeter has quit [Client Quit]
<d_bot>
<Continuation Calculus> Hi
<d_bot>
<Continuation Calculus> I have an ill-formed question
<d_bot>
<Continuation Calculus> Let's say I have a data-structure roughly equivalent to a big tree
<d_bot>
<Continuation Calculus> I pass its root around, and updating has a cost proportional to the height of the tree, all is well
<d_bot>
<Continuation Calculus> Now, let's say I notice there is a sub-part of the tree that I regularly change, and it's quite deep
<d_bot>
<Continuation Calculus> I'm sad, I dislike paying that O(height) cost every time
hornhack has joined #ocaml
<d_bot>
<Continuation Calculus> Is there a way for me to change my data-structure so that I can have O(1) updates for a dynamically specified sub-tree?
<d_bot>
<Continuation Calculus> With refs, I can do that, but I'd like to keep it purely functional
<d_bot>
<Def> a zipper?
hackinghorn has quit [Ping timeout: 252 seconds]
<d_bot>
<Continuation Calculus> I don't see how that would help
mro has joined #ocaml
<olle>
Why purely functional?
<d_bot>
<octachron> @froyo: yes, this is expected. `include` is not part of the module type system (there is no include at the type level), it is a meta construction and thus `sig include X end` is not typable.
<d_bot>
<Continuation Calculus> easy time-travel and serialization
terrorjack has joined #ocaml
<d_bot>
<octachron> @Continuation Calculus , analogous to the zipper (which allow you to update easily the current node of the zipper) you could add indices node to the tree, that points to a map of frequently modified subtree, then updating the subtree is a matter of updating this smaller map .
<d_bot>
<Continuation Calculus> I'm thinking about this, basically making the reference first class with a `| Actual_content | Reference`
<d_bot>
<Continuation Calculus> Is there any obvious drawback to doing this?
<d_bot>
<octachron> I would say mostly that it is unclear if the difference in performance makes up for the increase in complexity.
<d_bot>
<Continuation Calculus> makes sense. i basically want to implement a redux-like in OCaml, but with a builtin notion of local changes
kakadu has joined #ocaml
<d_bot>
<Continuation Calculus> is there such a thing as heterogeneous trees in ocaml?
[itchyjunk] has joined #ocaml
hackinghorn has joined #ocaml
hornhack has quit [Ping timeout: 252 seconds]
wwilly has quit [Ping timeout: 245 seconds]
orbifx has joined #ocaml
bartholin has joined #ocaml
cedric has joined #ocaml
cedric has quit [Quit: Konversation terminated!]
dh` has joined #ocaml
dh` has quit [Changing host]
mro has quit [Ping timeout: 260 seconds]
[itchyjunk] has quit [Remote host closed the connection]
<Leonidas>
dune requires ocaml which requires ocaml-base-compiler which fails because it is pinned to 4.12.1, yet it has `>= 4.12.0~` which should match 4.12.1 just fine.
<octachron>
Leonidas, I have no issue installing dune with 4.12.1?
mro has quit [Remote host closed the connection]
mro has joined #ocaml
<Leonidas>
Ah, looks like the OCaml CI doesn't know about 4.12.1 yet.
hackinghorn has quit [Remote host closed the connection]
hackinghorn has joined #ocaml
gravicappa has joined #ocaml
average has quit [Quit: Connection closed for inactivity]
hornhack has joined #ocaml
troydm1 has quit [Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset]
hackinghorn has quit [Killed (NickServ (GHOST command used by hornhack))]
hornhack is now known as hackinghorn
mro has quit [Remote host closed the connection]
Tuplanolla has joined #ocaml
mro has joined #ocaml
troydm has joined #ocaml
gravicappa has quit [Ping timeout: 250 seconds]
mro has quit [Remote host closed the connection]
[itchyjunk] has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
mortemeur has joined #ocaml
[itchyjunk] has quit [Remote host closed the connection]
glassofethanol has quit [Quit: leaving]
gravicappa has joined #ocaml
waleee has joined #ocaml
olle has quit [Ping timeout: 265 seconds]
zebrag has joined #ocaml
bartholin has quit [Quit: Leaving]
Haudegen has joined #ocaml
zebrag has quit [Remote host closed the connection]
olle has joined #ocaml
mbuf has quit [Quit: Leaving]
salvi has joined #ocaml
salvi is now known as vukung
hackinghorn has quit [Ping timeout: 264 seconds]
hackinghorn has joined #ocaml
olle has quit [Ping timeout: 246 seconds]
average has joined #ocaml
mortemeur has quit [Quit: Leaving]
Stumpfenstiel has joined #ocaml
<d_bot>
<EduardoRFS> There is any movement pro or against doing something similar to MLF in OCaml? I know that describing System F is not that hard, but it would be so much nicer if we had a nice integration