adrien changed the topic of #ocaml to: Channel available on irc.libera.chat | 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://irclog.whitequark.org/ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 245 seconds]
mxns has joined #ocaml
mxns has quit [Ping timeout: 260 seconds]
mxns has joined #ocaml
mxns has quit [Ping timeout: 250 seconds]
mxns has joined #ocaml
mxns has quit [Ping timeout: 265 seconds]
Haudegen has quit [Ping timeout: 246 seconds]
mxns has joined #ocaml
mxns has quit [Ping timeout: 258 seconds]
mxns has joined #ocaml
mxns_ has joined #ocaml
mxns has quit [Ping timeout: 250 seconds]
dhil has quit [Ping timeout: 265 seconds]
arecaceae has quit [Remote host closed the connection]
visage_ has quit [Quit: Textual IRC Client: www.textualapp.com]
arecaceae has joined #ocaml
mbuf has joined #ocaml
waleee-cl has quit [Quit: Connection closed for inactivity]
shawnw has quit [Remote host closed the connection]
mxns_ has quit [Ping timeout: 240 seconds]
bjorkintosh has quit [Ping timeout: 258 seconds]
madroach is now known as chrisz
chrisz has quit [Quit: leaving]
chrisz has joined #ocaml
chrisz has quit [Client Quit]
chrisz has joined #ocaml
stux|RC-only has quit [Quit: Aloha!]
stux|RC-only has joined #ocaml
mbuf has quit [Quit: Leaving]
stux|RC has quit [Quit: Aloha!]
suqingxi[m] has joined #ocaml
stux|RC has joined #ocaml
daimrod has quit [Quit: WeeChat 2.9]
gareppa has joined #ocaml
dhil has joined #ocaml
tryte has quit [Remote host closed the connection]
tryte has joined #ocaml
tane has joined #ocaml
gareppa has quit [Quit: Leaving]
bartholin has joined #ocaml
_whitelogger has joined #ocaml
waleee-cl has joined #ocaml
richbridger has quit [Remote host closed the connection]
<d_bot> <Cyclomatic Complexity> Hi
<d_bot> <Cyclomatic Complexity> Is there a ppx that lets you declare which module declarations are private/public, and generate its interface from it?
<d_bot> <Cyclomatic Complexity> Let's say that there is no such ppx, and I wanted to make one, what would be the best way to do so? I already made some ppx deriving in the past if that helps.
bartholin has quit [Ping timeout: 265 seconds]
Haudegen has joined #ocaml
<d_bot> <octachron> If you are generating another file, this is not a ppx. It can be a compilerlibs based executable.
<d_bot> <octachron> And yes that is probably doable, and probably an anti-feature.
arecaceae has quit [Remote host closed the connection]
arecaceae has joined #ocaml
bartholin has joined #ocaml
tryte has quit [Ping timeout: 240 seconds]
tryte has joined #ocaml
bartholin has quit [Ping timeout: 240 seconds]
gareppa has joined #ocaml
bartholin has joined #ocaml
<d_bot> <Cyclomatic Complexity> @octachron Not an other file, just a module signature
<d_bot> <Cyclomatic Complexity> Wondering why this would be an anti-feature. Worst case, if one is attached to the .mli because of legacy/aesthetics, one could just generate it. Right now, I have to annotate my functions both in the .ml / struct, to get good error messages, _and_ in the signature / interface
<d_bot> <octachron> Writing a mli is a minor percentage of the work required to write a barebone documentation.
<d_bot> <octachron> It is trading a minor local annoyance for far less visible interfaces and documentation.
<d_bot> <octachron> You are writing the interface for the ml file, that requires generating the mli file.
bartholin has quit [Quit: Leaving]
<d_bot> <roddy> "I have to annotate my functions both in the .ml / struct, to get good error messages" as in, to get good type errors? Or something else? Personally I don't find annotations in structs to be necessary very often
<d_bot> <Cyclomatic Complexity> A lot of the time, you are writing code that is not meant for other people, and you can use whatever guidelines you want when in teams
<d_bot> <Cyclomatic Complexity> Yes. If you violate a type annotation in an .mli / module sig, you get an usually much more bloated error message (in the case of merlin, the whole module + sig become red) than if you violate a type annotation on a function
mbuf has joined #ocaml
bartholin has joined #ocaml
bartholin has quit [Ping timeout: 265 seconds]
bartholin has joined #ocaml
dhil has quit [Ping timeout: 240 seconds]
bartholin has quit [Ping timeout: 246 seconds]
bartholin has joined #ocaml
dhil has joined #ocaml
bartholin has quit [Ping timeout: 260 seconds]
User4321 has joined #ocaml
<User4321> Hi everyone. I have a problem with types. I have a function that returns a pair of elements and I want these elements to be passed as parameters to another function which takes 2 separate arguments...
<User4321> Could someone have a look at my code? Thanks :)
<d_bot> <undu> ```ocaml
<d_bot> <undu> let arg_1, arg_2 = function_that_returns_a_pair () in
<d_bot> <undu> another_function arg_1 arg_2
<d_bot> <undu> ```
Ekho has left #ocaml ["CORE ERROR, SYSTEM HALTED"]
dhil has quit [Ping timeout: 245 seconds]
dhil has joined #ocaml
mbuf has quit [Quit: Leaving]
gareppa has quit [Quit: Leaving]
Anarchos has joined #ocaml
freshmaker666 is now known as greeb
<d_bot> <EduardoRFS> it's not being attached to the mli, mli provides docs and also performance improvements, if you don't have an mli at least you need to wait the `.ml` to type to start building another file, in practice you will be waiting for the ml to fully build then start building the next one, having the mli in opaque mode allows everything to build in parallel
<d_bot> <EduardoRFS> but yeah it's possible to generate this, you will need to run the typechecker so a staged_pps, which is also slower, because it then runs the typer 2 times, but it is feasible
<flux> so, I haven't done OCaml for a while, but now I have a job for it. how come `opam switch --full` doesn't list 4.12?
<flux> also my ocamlrun binary is failing due to glibc version.. :)
<octachron> "opam switch --full" lists the installed switches.
<flux> ah, it was list-available :)
dckc has quit [Quit: ZNC 1.6.6+deb1ubuntu0.2 - http://znc.in]
dckc has joined #ocaml
nikos_lv13 has joined #ocaml
nikos_lv13 has quit [Quit: Leaving]
Anarchos has quit [Quit: Vision[0.10.3]: i've been blurred!]
mxns has joined #ocaml
User4321 has quit [Quit: Connection closed]
greeb has left #ocaml ["WeeChat 3.1"]
oriba has joined #ocaml
srax has quit [Ping timeout: 240 seconds]
srax has joined #ocaml
gareppa has joined #ocaml
gareppa has quit [Quit: Leaving]
mxns has quit [Ping timeout: 250 seconds]
richbridger has joined #ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 260 seconds]
peddie has left #ocaml ["User left"]
mxns has joined #ocaml
mxns has quit [Ping timeout: 245 seconds]
mxns has joined #ocaml
tane has quit [Quit: Leaving]
mxns has quit [Ping timeout: 245 seconds]
mxns has joined #ocaml
mxns has quit [Ping timeout: 250 seconds]
oriba has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
mxns has joined #ocaml
mxns has quit [Quit: ZNC 1.8.2 - https://znc.in]
mxns has joined #ocaml
ArthurStrong has joined #ocaml
mxns has quit [Ping timeout: 258 seconds]
wingsorc has joined #ocaml
visage_ has joined #ocaml