John_Ivan has quit [Quit: Disrupting the dragon's slumber one time too often shall eventually bestow upon all an empirical and indiscriminate conflagration that will last for all goddamn eternity.]
gentauro has quit [Read error: Connection reset by peer]
gentauro has joined #ocaml
bgs has quit [Remote host closed the connection]
bartholin has joined #ocaml
olle has joined #ocaml
wingsorc has quit [Ping timeout: 248 seconds]
alexherbo2 has joined #ocaml
spip has joined #ocaml
alexherbo2 has quit [Remote host closed the connection]
<discocaml>
<darrenldl> is tail mod cons still a very experimental
<discocaml>
<darrenldl> interface?
<discocaml>
<darrenldl> (if it ever was, that is)
<discocaml>
<deepspacejohn> IIRC parts of the stdlib use it now, or at least will in the next release
<discocaml>
<Bluddy> supposed to be working fine but has to be activated manually
<discocaml>
<darrenldl> is there any precaution to using it in a project? (say on the level of avoiding similar to effect handler, cause i can't quite imagine tail mod cons to have significantly changing interface between releases...)
<discocaml>
<Kali> as noted in the manual, it can change the order that arguments are evaluated in, which matters if you are passing impure functions to it
<discocaml>
<Kali> i don't know of any others, but there may be some
azimut has joined #ocaml
<discocaml>
<deepspacejohn> I think it’s also slower and the complied output is slightly larger.
Haudegen has quit [Quit: Bin weg.]
azimut has quit [Remote host closed the connection]
azimut has joined #ocaml
micro has quit [Remote host closed the connection]
waleee has joined #ocaml
Haudegen has joined #ocaml
rf has joined #ocaml
micro has joined #ocaml
<discocaml>
<darrenldl> i see, thanks all!
bartholin has quit [Quit: Leaving]
<discocaml>
<NULL> slower *to compile* maybe, it shouldn't be slower *to run*
<discocaml>
<deepspacejohn> I haven't measured it myself, but that's just what I remember from this discussion: https://discuss.ocaml.org/t/stdlib-list-loop-unrolling/11262?u=johnj Performance seems to be the reason why the stdlib does loop unrolling for functions using TMC.
bgs has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
Inst_ is now known as Inst
bartholin has joined #ocaml
Putonlalla has joined #ocaml
<Ankhers>
Does ocaml allow cyclical dependencies at the module level? i.e., can I define modules A and B and have them both call each other?
<companion_cube>
you can use `module rec` but it's disgusting
<discocaml>
<Kali> yes, but only if they are in the same file using `module rec`
<Ankhers>
Ok. So by default it doesn't allow it. And it doesn't allow it at all if they are in separate files?