companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 5.0 released(!!1!): https://ocaml.org/releases/5.0.0.html | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
Serpent7776 has quit [Ping timeout: 276 seconds]
Haudegen has quit [Ping timeout: 276 seconds]
Tuplanolla has quit [Quit: Leaving.]
sagax has quit [Quit: Konversation terminated!]
spip has quit [Quit: Konversation terminated!]
azimut has joined #ocaml
gwizon has quit [Quit: leaving]
azimut has quit [Ping timeout: 255 seconds]
azimut has joined #ocaml
rf has quit [Quit: Leaving]
mbuf has joined #ocaml
chrisz has quit [Ping timeout: 255 seconds]
chrisz has joined #ocaml
trev has joined #ocaml
motherfsck has quit [Ping timeout: 276 seconds]
Haudegen has joined #ocaml
anpad has joined #ocaml
bgs has joined #ocaml
Serpent7776 has joined #ocaml
bgs has quit [Remote host closed the connection]
<discocaml> <Chimrod> Hello, I’m using Ocaml with cygwin/mingw with fdopen repo, and I have an error when installing the library ppx_inline_test. Can I report the error in the error directly in the janestreet bug tracker or should I check something in my config before ? (I know that the fdopen repo is deprecated now…)
<discocaml> <Chimrod> Hello, I’m using Ocaml with cygwin/mingw with fdopen repo, and I have an error when installing the library ppx_inline_test. Can I report the error directly in the janestreet bug tracker or should I check something in my config before ? (I know that the fdopen repo is deprecated now…)
bartholin has joined #ocaml
<adrien> hard to tell, it's going to depend on the error
<discocaml> <Chimrod> This an unbound module :
<discocaml> <Chimrod> ```# File "src/ppx_inline_test.ml", line 85, characters 18-44:
<discocaml> <Chimrod> # 85 | let filename = File_path.get_default_path loc in
<discocaml> <Chimrod> # ^^^^^^^^^^^^^^^^^^^^^^^^^^
<discocaml> <Chimrod> # Error: Unbound module File_path
<discocaml> <Chimrod> # Hint: Did you mean Code_path?
<discocaml> <Chimrod> ```
<discocaml> <Chimrod> The line, seems to match the code in the git repo (for the last tagged version), so this looks like a dependancy error, or an update comming from another library, but I can’t figure which one
<discocaml> <Chimrod> The line seems to match the code in the git repo (for the last tagged version), so this looks like a dependancy error, or an update comming from another library, but I can’t figure which one
azimut has quit [Quit: ZNC - https://znc.in]
azimut has joined #ocaml
spip has joined #ocaml
olle has joined #ocaml
Haudegen has quit [Ping timeout: 255 seconds]
bartholin has quit [Quit: Leaving]
<discocaml> <darrenldl> in angstrom's definition of `many`, it's essentially using explicit closures to move the call stack to heap right?
<discocaml> <zen> is there a simple way to build statically linked binaries with ocaml? I've seen the OcamlPro blogpost but that approach seems complex and brittle, is that still the 'state of the art'?
wingsorc has quit [Ping timeout: 246 seconds]
<discocaml> <dinosaure> Currently, for my case, I'm able to compile statically Bob (https://github.com/dinosaure/bob) with my Cosmopolitan toolchain (https://github.com/dinosaure/esperanto). The latter show a full example of how to statically compile a project. Moreover, this is what we do for a long time for MirageOS (because we want to produce a full image which will be an operating system). The real _trick_ is to fetch all dependencies and compile the project wi
neiluj has joined #ocaml
<neiluj> Hey! would you find it useful to have a SageMath-like library in OCaml?
<neiluj> I know there is Owl but it isn't as complete as Sagemath
<neiluj> most of the effort would be to write bindings to the various backends sagemath is using PARI/GP, and reimplementing a lot of Python code to ocaml...
<discocaml> <zen> That's interesting and I would be fine using that if it's 'fire-and-forget', I'm looking for a solution where I don't have to worry about writing linker flags etc... I also don't mind compiling platform specific binaries, and would like to support windows ideally
<neiluj> good to hear it! :) it would have a focus on cryptography so mostly algebra (polynomials, finite fields, elliptic curves, matrices, lattices...). It could start as a bindings to a subset of PARI/GP's C API with nice functors for modularity
<neiluj> because PARI/GP scripting language is awful!
<discocaml> <dinosaure> in the case that you want a portable binary across platform, `esperanto` is a really good candidate, the binary produced is polyglot for Windows, Mac, Linux and \*BSD 🙂
<neiluj> lol
troydm has joined #ocaml
<neiluj> how does the garbage collector run in ocaml? in a separate process?
<adrien> at the moment: stop-the-world upon allocation
<octachron> Only for minor collections, major collection is concurrent.
<octachron> but anyway, it is the domain themselves that are running the garbage collector.
<octachron> (possibly on a backup thread)
<adrien> hmm, sorry, I was being dumb and thinking about pre-5 (correct me if that was different even then)
<octachron> With the runtime lock in OCaml 4, the meaning of stop-the-world is a bit unclear.
<discocaml> <KW78> Is that correct ? : in ocaml 5, each domain runs its own GC, the minor being totally independent up to a multi-domain synchronisation. Major allocations (either directly or through the minor-major copying ) is done via a multi-threaded memory allocator (hence not related to GC per se, and also does make the independent minor possible). Not sure how major objects are collected and coordinated, I would assume some additional markers in the mark ph
<octachron> Sure, the GC acquires the global lock when running and is stopping the execution of the "OCaml world" but that is part of the normal concurrency model of OCaml 4.
<octachron> KW78, no, that sounds like you have the concurrent minor collections variant in mind which was the first prototype.
<octachron> The current version of the minor collection is a stop-the-world variant where all domains collaborate on minor collections.
<octachron> https://arxiv.org/abs/2004.11663 describes the switch to the concurrent minor collection to the stop-the-world one.
<neiluj> are there tools to automatically generate bindings to C functions? Ctypes has the necessary functionality to do it manually in a simple way so there may be tools built on top of ctypes to do build the bindings automagically?
<neiluj> thanks by the way for the pointers and explanation on ocaml's GC
<discocaml> <Chimrod> Found. I’ve downgraded ppxlix into 0.25.1 and it’s fine now
hornhack has joined #ocaml
<neiluj> oh there's https://github.com/fdopen/ppx_cstubs excellent! :)
contificate has joined #ocaml
horninghack has joined #ocaml
bgs has joined #ocaml
hornhack has quit [Ping timeout: 276 seconds]
olle has quit [Remote host closed the connection]
motherfsck has joined #ocaml
mbuf has quit [Quit: Leaving]
rf has joined #ocaml
gentauro has quit [Read error: Connection reset by peer]
gentauro has joined #ocaml
bgs has quit [Remote host closed the connection]
horninghack has quit [Read error: Connection reset by peer]
horninghack has joined #ocaml
neiluj has quit [Quit: WeeChat 3.7.1]
hornhack has joined #ocaml
hornhack has quit [Remote host closed the connection]
hornhack has joined #ocaml
hornhack has quit [Read error: Connection reset by peer]
horninghack has quit [Ping timeout: 250 seconds]
xgqt has quit [Ping timeout: 264 seconds]
xgqt has joined #ocaml
azimut has quit [Ping timeout: 255 seconds]
azimut has joined #ocaml
Haudegen has joined #ocaml
contificate has quit [Quit: WeeChat 3.8]
szkl has quit [Quit: Connection closed for inactivity]
Tuplanolla has joined #ocaml
bartholin has joined #ocaml
azimut has quit [Ping timeout: 255 seconds]
olle has joined #ocaml
Hmmf has joined #ocaml
trev has quit [Remote host closed the connection]
Stumpfenstiel has joined #ocaml
bic has joined #ocaml
bic has quit [Quit: WeeChat 3.8]
cedric has joined #ocaml
olle has quit [Ping timeout: 260 seconds]
Hmmf has quit [Quit: Client closed]
cedric has quit [Quit: Konversation terminated!]
hrberg has quit [Ping timeout: 255 seconds]
bartholin has quit [Quit: Leaving]
wingsorc has joined #ocaml
Serpent7776 has quit [Ping timeout: 255 seconds]
Tuplanolla has quit [Quit: Leaving.]
motherfsck has quit [Ping timeout: 260 seconds]
Stumpfenstiel has quit [Ping timeout: 255 seconds]