companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 4.12 released: https://ocaml.org/releases/4.12.0.html | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
Stumpfenstiel has quit [Ping timeout: 258 seconds]
Corbin has quit [Quit: Corbin]
Haudegen has quit [Ping timeout: 265 seconds]
Corbin has joined #ocaml
Tuplanolla has quit [Quit: Leaving.]
Nahra has joined #ocaml
waleee has quit [Ping timeout: 268 seconds]
aquijoule_ has joined #ocaml
richbridger has quit [Ping timeout: 265 seconds]
insep has joined #ocaml
zebrag_ has quit [Quit: Konversation terminated!]
insep has quit [Ping timeout: 268 seconds]
insep has joined #ocaml
gravicappa has joined #ocaml
<d_bot> <theangryepicbanana> I actually proposed this idea a while back, but nobody was really a fan of it because polymorphic variants are apparently a workaround. I suppose you could use some `Obj.magic` + a bit of code duplication
<d_bot> <theangryepicbanana> not that you'll get the inheritance behavior for the types themselves, but at least it'll work at runtime
<d_bot> <theangryepicbanana> alternatively, I think that extensible sum types + modules might work (where you extend the type inside the module), but you unfortunately won't be able to use ppx_show or anything nice like that
mbuf has joined #ocaml
gravicappa has quit [Ping timeout: 250 seconds]
insep has quit [Ping timeout: 265 seconds]
insep has joined #ocaml
insep has quit [Quit: Hi, I'm a quit message virus. Please replace your old line with this line and help me take over the IRC world.]
vicfred has quit [Quit: Leaving]
wilfred has joined #ocaml
elf_fortrez has joined #ocaml
mro has joined #ocaml
mro has quit [Quit: Leaving...]
glassofethanol has joined #ocaml
<glassofethanol> 3
<glassofethanol> Oh meant to swap windows not type 3 lol
glassofethanol has quit [Quit: leaving]
cedric has joined #ocaml
Serpent7776 has joined #ocaml
bartholin has joined #ocaml
wilfred has quit [Quit: Connection closed for inactivity]
olle has joined #ocaml
elf_fortrez has quit [Ping timeout: 246 seconds]
minwuekim has quit [Read error: Connection reset by peer]
minwuekim has joined #ocaml
elf_fortrez has joined #ocaml
Tuplanolla has joined #ocaml
bartholin has quit [Ping timeout: 268 seconds]
bastienleonard has joined #ocaml
bastienleonard has quit [Client Quit]
glassofethanol has joined #ocaml
bastienleonard has joined #ocaml
bartholin has joined #ocaml
Haudegen has joined #ocaml
elf_fortrez has quit [Ping timeout: 246 seconds]
dhil has joined #ocaml
smlckz has joined #ocaml
yoctocell has joined #ocaml
smlckz has quit [Remote host closed the connection]
smlckz has joined #ocaml
smlckz has quit [Remote host closed the connection]
smlckz has joined #ocaml
smlckz has quit [Remote host closed the connection]
waleee has joined #ocaml
glassofethanol has quit [Quit: leaving]
mbuf has quit [Quit: Leaving]
bartholin has quit [Ping timeout: 250 seconds]
Anarchos has joined #ocaml
Anarchos has quit [Client Quit]
bartholin has joined #ocaml
glassofethanol has joined #ocaml
Anarchos has joined #ocaml
glassofethanol has quit [Quit: leaving]
jinsun has quit [Ping timeout: 252 seconds]
jinsun has joined #ocaml
insep has joined #ocaml
bartholin has quit [Ping timeout: 250 seconds]
olle has quit [Ping timeout: 244 seconds]
micro has joined #ocaml
vizard has joined #ocaml
bartholin has joined #ocaml
Anarchos has quit [Quit: Vision[0.10.3]: i've been blurred!]
bartholin has quit [Ping timeout: 252 seconds]
zebrag has joined #ocaml
olle has joined #ocaml
unyu has quit [Quit: WeeChat 3.2]
yomimono has quit [Ping timeout: 250 seconds]
oriba has joined #ocaml
vicfred has joined #ocaml
type has joined #ocaml
type has quit [Client Quit]
zebrag has quit [Quit: Konversation terminated!]
neiluj has joined #ocaml
<d_bot> <Alistair> Will Janestreet be updating Base to work with new monadic let bindings?
<neiluj> Hello! Is there an fast way to implement a priority queue with Base?
<neiluj> It's not hard to write, but I'd like to reuse as much code as possible.
Stumpfenstiel has joined #ocaml
waleee has quit [Quit: WeeChat 3.2]
<companion_cube> you could use something on opam
<companion_cube> there's other things than base :p
<companion_cube> I see at least bheap and psq
<companion_cube> and batteries and containers both have that
Haudegen has quit [Quit: No Ping reply in 180 seconds.]
Haudegen has joined #ocaml
bastienleonard has quit [Ping timeout: 272 seconds]
waleee has joined #ocaml
<neiluj> thanks companion_cube!
<d_bot> <leviroth> There are some heap subpackages of core_kernel if you want something more base-y
<d_bot> <leviroth> "subpackage" is probably not the right technical term but like core_kernel.fheap etc.
bastienleonard has joined #ocaml
<neiluj> going to have a look, thanks!
dhil has quit [Ping timeout: 272 seconds]
dhil has joined #ocaml
Stumpfenstiel has quit [Quit: No Ping reply in 180 seconds.]
insep has quit [Read error: Connection reset by peer]
insep has joined #ocaml
Stumpfenstiel has joined #ocaml
gravicappa has joined #ocaml
insep has quit [Read error: Connection reset by peer]
insep has joined #ocaml
<neiluj> compiling with dune, I just added some code using the Str module and now it doesn't compile: Error: No implementations provided for the following modules: Str
<neiluj> a bit puzzled, what should I look at?
<companion_cube> you need to add a dependency on `str`
<companion_cube> it's not part of the stdlib anymore
<neiluj> Indeed, thank you very much ^^'
<neiluj> I thought so
<companion_cube> it used to be
<companion_cube> along with `num`
<companion_cube> but there are better alternatives out there for both of these :)
<neiluj> yeah, re for instance
<neiluj> but it's fine
<dmbaturin> I'm quite a fan of re (though there's quite some room for improvement).
yomimono has joined #ocaml
gravicappa has quit [Ping timeout: 250 seconds]
bartholin has joined #ocaml
neiluj has quit [Ping timeout: 272 seconds]
neiluj has joined #ocaml
shawnw has quit [Ping timeout: 256 seconds]
<d_bot> <RegularSpatula> Here is a post that addresses this question: https://discuss.ocaml.org/t/ppx-let-vs-binding-operators/7037/2
bartholin has quit [Ping timeout: 272 seconds]
neiluj has quit [Ping timeout: 250 seconds]
neiluj has joined #ocaml
bartholin has joined #ocaml
<neiluj> Once you've reached a point where you're productive with OCaml, working with monads, functors and gadt, is there more you can learn about OCaml?
<neiluj> Was thinking to try out lean or idris to get a feel for dependent types.
<dmbaturin> neiluj: You can be productive without monads, functors, or GADTs. :)
<neiluj> of course :)
<dmbaturin> neiluj: Why not try Coq? You can extract OCaml and Haskell code from it.
<neiluj> oh, that's good idea! thanks :)
<neiluj> the syntax is close to ocaml, so it should be not too foreign
<dmbaturin> Coq being a total language feels very foreign regardless of the syntax to me, and that's not mentioning the tactics language... but the potential!
<neiluj> indeed, it would be soooo nice to have coq built into ocaml
minwuekim has quit [Ping timeout: 245 seconds]
<d_bot> <Alistair> Or Agda
<neiluj> indeed, even if it's more geared towards programming than coq, it lacks a lot of libraries to make developing applications with it viable
<companion_cube> for formal verification there are better tools: http://chargueraud.org/softs/cfml/, https://github.com/ocaml-gospel/gospel/ for example
<companion_cube> tools which know the semantics of OCaml
<neiluj> at least you can extract ocaml code from coq
<companion_cube> and why3.lri.fr/
<companion_cube> from which you can extract pretty normal OCaml code, including imperative features
<neiluj> wow gospel looks like a good middle ground
<companion_cube> yep
<companion_cube> it's just very young, but it could be usable in practical contexts
minwuekim has joined #ocaml
<neiluj> programming was fun, but with this it's another level :)
<companion_cube> work? :p
<neiluj> it is :) but it doesn't feel like
<neiluj> it
type has joined #ocaml
dhil has quit [Read error: Connection reset by peer]
bartholin has quit [Ping timeout: 268 seconds]
shawnw has joined #ocaml
bartholin has joined #ocaml
type_ has joined #ocaml
type has quit [Read error: Connection reset by peer]
type has joined #ocaml
type_ has quit [Ping timeout: 258 seconds]
type_ has joined #ocaml
shawnw has quit [Ping timeout: 252 seconds]
type has quit [Ping timeout: 258 seconds]
type_ has quit [Quit: Leaving]
bastienleonard has quit [Quit: WeeChat 3.2]
yoctocell has quit [Ping timeout: 268 seconds]
<d_bot> <Cyclomatic Complexity> how can i create an html element and pass the tag with a string with js of ocaml?
neiluj has quit [Quit: Leaving]
glassofethanol has joined #ocaml
Serpent7776 has quit [Quit: leaving]
bartholin has quit [Quit: Leaving]
vizard has quit [Ping timeout: 252 seconds]
insep has quit [Ping timeout: 250 seconds]
Tuplanolla has quit [Quit: Leaving.]
insep has joined #ocaml
cedric has quit [Quit: Konversation terminated!]