kaph has quit [Read error: Connection reset by peer]
Everything has quit [Quit: leaving]
Haudegen has quit [Ping timeout: 240 seconds]
kaph has joined #ocaml
gravicappa has joined #ocaml
waleee has quit [Ping timeout: 240 seconds]
<d_bot>
<Bluddy> #editor-support should really be under Ecosystem. FYI I'll be moving it soon.
zebrag has quit [Quit: Konversation terminated!]
chrisz has quit [Ping timeout: 256 seconds]
chrisz has joined #ocaml
bobo has joined #ocaml
spip has quit [Ping timeout: 256 seconds]
mro has joined #ocaml
mro has quit [Ping timeout: 240 seconds]
Serpent7776 has joined #ocaml
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
Tuplanolla has joined #ocaml
Haudegen has joined #ocaml
namkeleser has joined #ocaml
<d_bot>
<andreypopp> yeah... looks like this isn't possible ā caml_startup is only called for the first .so loaded. Wondering if ocaml 5 allows that
xd1le has joined #ocaml
bartholin has joined #ocaml
mro has quit [Remote host closed the connection]
troydm has quit [Ping timeout: 256 seconds]
mro has joined #ocaml
namkeleser has quit [Quit: Client closed]
bobo has quit [Quit: Konversation terminated!]
mro has quit [Quit: Leaving...]
bartholin has quit [Read error: Connection reset by peer]
<d_bot>
<Continuation Calculus> for testing purposes, I'm trying to concretize a virtual library's signature, and I can't even get define the type signature I want. `module type TYPE = module type of My_virtual_library with My_param.t = int` doesn't work (type declarations do not match,)
<d_bot>
<Continuation Calculus> It looks like as if `My_param.t` already was concrete, but at the same time, I can't find what its concrete type is
bartholin has joined #ocaml
<d_bot>
<Continuation Calculus> Something that might help, how can I ask OCaml what all the constraints it has on a type are?
<d_bot>
<Continuation Calculus> Or even better, given this is only for testing purposes, and not the actual live code, is there an `Obj.magic` at the module type substitution level, where I can be like "no worries, they really are the same type, let me perform the substitution"? I know how to create fake type equality witnesses through GADT and Obj.magic, but not sure how to use this to actually perform the `with type =` that I want
<d_bot>
<octachron> `with` constraints are nearly textual transformation. You cannot have `Obj.magic` at the module level, because it would potentially break the typing of your programs rather than its execution.
<d_bot>
<Continuation Calculus> > because it would potentially break the typing of your program
<d_bot>
<octachron> I would suggest to just check the inferred type of `module type of My_virtual_library` (with `cmi2mli` for instance)
<d_bot>
<octachron> Not really, you can create proofs of false, but your theorems are still well-written theorems (that states non-sensical results).
<d_bot>
<octachron> Or in other words, the typechecker implementation is not written defensively against non-valid module types (or types) and expects well-formed ASTs.
namkeleser has joined #ocaml
<d_bot>
<octachron> (And to explain the restriction on the `with` constraint, the issue would be with things like https://gist.github.com/Octachron/ce055a497cc8f1cdf03f8c252487599c that try to replace an injective type constructor with a non-injective one in a signature that relied on the injectivity of the original type constructor)
<d_bot>
<Continuation Calculus> I see, thanks
gravicappa has quit [Ping timeout: 250 seconds]
<d_bot>
<Continuation Calculus> .cmis are only built for libs, not bins? š¦
<d_bot>
<octachron> Ah, cmi are built for everything except potentially the main module of an executable.
<d_bot>
<Continuation Calculus> I see
<d_bot>
<Continuation Calculus> I've built a dummy library, but only get a .a and a .cmxa
<d_bot>
<octachron> The `cmi`s must be elsewhere, you cannot use library (or any compilation unit really) without `cmi`s
<d_bot>
<Continuation Calculus> well, it's not in `$cur__target_dir/default/..path../`
<d_bot>
<Continuation Calculus> I'll check out later
omni has quit [Read error: Connection reset by peer]
omni has joined #ocaml
kaph has quit [Read error: Connection reset by peer]
kaph has joined #ocaml
bartholin has joined #ocaml
Fardale1 has joined #ocaml
kurfen has quit [Ping timeout: 250 seconds]
Fardale has quit [Ping timeout: 250 seconds]
kurfen has joined #ocaml
drewolson0 has joined #ocaml
sparogy has quit [Ping timeout: 250 seconds]
drewolson has quit [Ping timeout: 250 seconds]
drewolson0 is now known as drewolson
ns128 has joined #ocaml
ansiwen_ has joined #ocaml
riverdc_ has joined #ocaml
SoniEx2 has joined #ocaml
ansiwen has quit [Ping timeout: 250 seconds]
Soni has quit [Remote host closed the connection]
riverdc has quit [Ping timeout: 250 seconds]
ns12 has quit [Ping timeout: 250 seconds]
ns128 is now known as ns12
sparogy has joined #ocaml
<sleepydog>
the Fmt package is so good. I am constantly surprised by how succinctly I can define a pretty-printer for complex structures with this library.
<d_bot>
<glennsl> For the version of ppxlib I have installed
<sim642>
But it currently migrates everything to 4.12 or something
<d_bot>
<glennsl> Right, makes sense. I find it unreasonably hard to find that important piece of information though, but it's in the change log for 0.22, released a bit over a year ago: "Bump ppxlib's AST to 4.12 "