companion_cube changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.05.0 release notes: https://caml.inria.fr/pub/distrib/ocaml-4.05/notes/Changes | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
dtornabene has joined #ocaml
dtornabene_ has joined #ocaml
dtornabene_ has quit [Remote host closed the connection]
ristos has quit [Quit: Connection closed for inactivity]
eh_eff has quit [Ping timeout: 248 seconds]
Algebr` has quit [Ping timeout: 255 seconds]
pmetzger_ has quit []
Denommus has quit [Quit: going home]
mengu has quit [Remote host closed the connection]
pierpa has quit [Quit: Page closed]
enterprisey has joined #ocaml
eh_eff has joined #ocaml
mfp__ has quit [Ping timeout: 248 seconds]
ygrek has quit [Remote host closed the connection]
eh_eff has quit [Ping timeout: 240 seconds]
mengu has joined #ocaml
mengu has quit [Ping timeout: 246 seconds]
mbuf has joined #ocaml
nicoo has quit [Ping timeout: 248 seconds]
govg has joined #ocaml
nicoo has joined #ocaml
jbrown has quit [Ping timeout: 260 seconds]
cbot has joined #ocaml
samrat has joined #ocaml
cbot_ has joined #ocaml
enterprisey has quit [Remote host closed the connection]
cbot has quit [Ping timeout: 240 seconds]
<Khady> Some users of jbuilder utop command? I'm trying it for a lib but I get Error: Unbound module Clflags
<Khady> and no answer on the internet
<rgrinberg> Khady: you have utop installed? Clflags comes from the utop lib
<Khady> yes
<Khady> but maybe not recent enough
<Khady> 1.19.3
<rgrinberg> possibly. try upgrading > 2.0
<Khady> yes, need > 2.0
<Khady> thanks
<rgrinberg> np
kerrhau has quit [Ping timeout: 248 seconds]
johnelse has joined #ocaml
johnelse has quit [Ping timeout: 240 seconds]
dtornabene has quit [Quit: Leaving]
shinnya has quit [Ping timeout: 240 seconds]
enterprisey has joined #ocaml
samrat has quit [Ping timeout: 260 seconds]
johnelse has joined #ocaml
johnelse has quit [Ping timeout: 260 seconds]
slash^ has joined #ocaml
infinity0_ has joined #ocaml
infinity0 has quit [Ping timeout: 240 seconds]
infinity0_ has quit [Changing host]
infinity0_ has joined #ocaml
Simn has joined #ocaml
cbot_ has quit [Quit: Leaving]
ristos has joined #ocaml
TheLemonMan has joined #ocaml
andreas__ has joined #ocaml
kakadu has joined #ocaml
AltGr has joined #ocaml
al-damiri has quit [Quit: Connection closed for inactivity]
freusque has quit [Quit: WeeChat 1.7.1]
freusque has joined #ocaml
kakadu has quit [Remote host closed the connection]
ShalokShalom has joined #ocaml
johnelse has joined #ocaml
srenatus[m] is now known as srenatus
infinity0 has quit [Remote host closed the connection]
mengu has joined #ocaml
infinity0 has joined #ocaml
dejanr has quit []
<Simn> After upgrading from OCaml 4.04.2 to OCaml 4.05.0, our SWF generator produces bad output. It's probably our fault, but I wonder if somebody has an idea what to look for here, as it's not very easy to debug this (most of the related code is > 10 years old).
dejanr has joined #ocaml
argent_smith has joined #ocaml
<Leonidas> rgrinberg: the Mvar API in async is weird. There seems to be no t -> 'a Deferred.t where I could block on an mvar?
<Leonidas> There is just Mvar.value_available and then I have to take manually?
<Leonidas> lol, macos volumecontrol durchgeglitched
<Leonidas> man kann weniger als 1 bar volume haben
<Leonidas> indem man von 1 bar leister stellt, was es muted. dann unmuted man es und hat half of a bar volume >.>
<reynir> Leonidas: I think wrong channel :)
<Leonidas> reynir: oh, you are right
<Leonidas> I blame it on the fact that it is "morning"
dejanr has quit []
johnelse is now known as johnel_away
<reynir> I could use some coffee
johnel_away has quit [Quit: Lost terminal]
johnelse has joined #ocaml
dejanr has joined #ocaml
samrat has joined #ocaml
freyr has joined #ocaml
enterprisey has quit [Quit: Leaving]
shinnya has joined #ocaml
mengu_ has joined #ocaml
mfp__ has joined #ocaml
mengu has quit [Ping timeout: 246 seconds]
<theblatte> Simn: we had an issue in infer related to changes in the order of evaluation
<theblatte> they fixed an issue where native vs bytecode used to be different (so in fact the bug also showed up in the bytecode version of infer)
<Simn> That's interesting, thanks!
ayxih has quit [Quit: Leaving]
samrat has quit [Ping timeout: 258 seconds]
<Simn> Indeed, 4.04.2 bytecode reproduces the issue too, so it's almost definitely an eval order problem. Thanks for pointing me in that direction!
dakk_ has quit [Ping timeout: 258 seconds]
<freyr> after migration to jbuilder and separation of my project into several libs, the size of the binary has grown twice. What may be a reason, compiler does not inlining and eliminating dead code in libraries?
<theblatte> Simn: sweet :)
<Simn> Now I just have to find it...
<theblatte> yup, drove me crazy ^^
<Simn> That's encouraging! :D
<theblatte> actually once I knew I was looking for an eval problem it went much faster
<Simn> That's better!
<theblatte> I first had the issue with 4.04.2+flambda and nothing helped me there, whereas the changelog 4.04.2 -> 4.05.0 was much shorter
kakadu has joined #ocaml
mengu has joined #ocaml
mengu_ has quit [Ping timeout: 246 seconds]
jrslepak has quit [Ping timeout: 260 seconds]
jrslepak has joined #ocaml
sepp2k has joined #ocaml
TheLemonMan has quit [Remote host closed the connection]
_andre has joined #ocaml
mengu has quit [Ping timeout: 246 seconds]
govg has quit [Ping timeout: 248 seconds]
govg has joined #ocaml
eh_eff has joined #ocaml
eh_eff has quit [Ping timeout: 248 seconds]
jbrown has joined #ocaml
samrat has joined #ocaml
ShalokShalom_ has joined #ocaml
ShalokShalom has quit [Ping timeout: 240 seconds]
nicoo has quit [Ping timeout: 248 seconds]
nicoo has joined #ocaml
<Simn> theblatte, I finally found it... This is the change I had to make: https://github.com/HaxeFoundation/ocamllibs/commit/b2d729b5bddc5fa9c2c813e40df9feef44107ef9
<Simn> I can't really say I understand it though, which worries me a bit.
<theblatte> Simn: does the function call modify ctx.ffunctions?
<theblatte> if so then the fix is understandable ^^
<Simn> I don't think it does
<theblatte> you pass ctx to flatten_function so it's fishy
<Simn> Hmm yes
<theblatte> we really need static analysis for OCaml :p
<Simn> Right, it's not really clear if the `:: ctx.ffunctions` is evaluated before or after the call
freusque has quit [Quit: WeeChat 1.7.1]
<Simn> Now I get it, thanks!
<theblatte> cool fix ^^
sh0t has joined #ocaml
marcux has joined #ocaml
<shepi> Hello!
<shepi> I have a quick question about phantom types.
<shepi> Can the use of 'a type in the following gist: https://gist.github.com/shepard8/fad2a508bbe3b1ee5ceab014f5221306 considered a phantom type?
<shepi> The signature allows me to construct a list and ensure some operations are done on lists of the same size (most notably, map2, which I should have included in the signature)
<shepi> My concern is that people using this signature know at all time exactly what 'a is, and I was under the impression that a phantom type was usually totally unknown from the user
<shepi> (I added the map2 signature to the gist)
<octachron> shepi, this a phantom type. I am not sure how a phantom types could be hidden from users
<octachron> also typical encoding of sized list use GADTs, since it allows to type/prove more things
<shepi> Oh, ok
<shepi> do you have an article/blog post or something showing that? :-)
<theblatte> phantom types are gone in the runtime, but they very much show up in signatures
<octachron> shepi, a good example with a slightly different aim: https://drup.github.io/2016/08/02/difflists/
<shepi> Okay, so my understanding of phantom type was just completely wrong :P
<shepi> octachron, thank you very much! :-)
ShalokShalom_ is now known as ShalokShalom
<octachron> shepi, a more basic example might be: https://gist.github.com/Octachron/05eb7b1ccead65fb1cada5c03cc40dd2
<shepi> Oh!
<shepi> I did not know [] and :: were valid type names :O
<shepi> r/type/constructor/
<octachron> they are, starting from OCaml 4.03(
<octachron> )
<shepi> Okay, that's a nice feature imho
tane has joined #ocaml
<shepi> and yes, your example does exactly what I wanted, using GADT's, but I'm wondering what this implementation allows that phantom types do not :P
<octachron> For instance, the " | _ -> . " branch in the pattern matching tells to the type-checker "this case should be impossible, please check that"
<octachron> and would raise a type-checker error if the case is not impossible
<thizanne> shepi: any gadt introduction would provide the right answers to your question
<shepi> Yes, but this is encoded in the type already, isn't it?
<shepi> Oh no, excuse me, I see what you mean
<shepi> the 'size value and the 'elt value are unrelated a priori
<shepi> so with the phantom type, the implementer has to ensure that the lists are of the correct size, while with the GADTs the compiler can help
<shepi> thizanne, I'll take a look, thank you :-)
<thizanne> shepi: the typechecker doesnt know that, because you only used nil and cons to build your list, a (unit -> 'a, 'b) list cannot be empty
<thizanne> so when you pattern match, it will require the [] case (or emit a warning)
<thizanne> if you use gadt, this information (cons'ed lists have a unit -> 'a phantom variable) is stored in the constructors, which ultimately is the only way to build values of your types
<shepi> Oh ok, I see the difference :-)
<thizanne> so the typechecker can use it to ensure that, if you match on a non-empty list and only against a Cons variant, your match is exhaustive
<thizanne> (and it will also ensure that a function that takes non empty lists as input is not given empty lists)
<Leonidas> aantron: do I read it correctly that if I do lwt.atomic inside an lwt.atomic, the inner atomic is also invalidated once the outer one returns?
<shepi> thizanne, thank you for the extended explanation!
<thizanne> you're welcome, I encourage you to read a proper introduction :)
eh_eff has joined #ocaml
eh_eff has quit [Ping timeout: 240 seconds]
<ELLIOTTCABLE> o7 all
<ELLIOTTCABLE> hailing from StrangeLoop,
<ELLIOTTCABLE> I'm trying to install Merlin, but it's exploding on my system.
<ELLIOTTCABLE> src/frontend/ocamlmerlin.c:1:10: fatal error: 'stdlib.h' file not found, etc etc etc
<ELLIOTTCABLE> how can I get this to spit out the libraries-path, to try and debug why the heck this won't build on my system?
<zozozo> ELLIOTTCABLE: how are you trying to install merlin ? manually or through opam (which I would recommend as it makes your life a lot simpler) ?
<ELLIOTTCABLE> zozozo: both yield the same error!
<ELLIOTTCABLE> opam initially, then cloned and tried configure/make to try and figure out why it's failing.
<zozozo> that's strange, you should probably report that on the merlin repo
<companion_cube> no stdlib.h? can you usually compile C programs?
<ELLIOTTCABLE> companion_cube: I mean, I haven't tried to manually build something since my last system update — I'm on a beta macOS, and I'm faaaaairly sure that's the root of the problem
<reynir> eval $(opam config env) if you haven't tried that
<ELLIOTTCABLE> but I don't know OCaml Things™, so I'm not sure how to go digging
<ELLIOTTCABLE> ah k
<reynir> (atlhough that error sounds unrelated)
<ELLIOTTCABLE> yeah, my shell seems to be setup properly — CAML_LD_LIBRARY_PATH is defined, etc
<companion_cube> what if you compile a basic helloworld.c program that uses stdlib.h?
* ELLIOTTCABLE goes to try
<flux> leonidas, it seems slacko doesn't support the slack command /status, right?
<ELLIOTTCABLE> wow, wtf.
<ELLIOTTCABLE> k some digging later … helloworld.c:1:9: fatal error: 'stdlib.h' file not found, indeed
<ELLIOTTCABLE> this may not be the place to talk about this, idk, sorry,
<Armael> don't you need to install xcode stuff or something?
<ELLIOTTCABLE> yeah, that's all done. some sort of `clang` misconfiguration, it looks like.
<ELLIOTTCABLE> thanks, y'all!
<companion_cube> no pb :)
shinnya has quit [Ping timeout: 260 seconds]
<Leonidas> flux: well possible :(
Soni has quit [Ping timeout: 246 seconds]
marcux has quit [Ping timeout: 240 seconds]
BitPuffin|osx has quit [Remote host closed the connection]
superherointj has joined #ocaml
Soni has joined #ocaml
emias has quit [Quit: WeeChat 1.9]
mbuf has quit [Quit: rcirc on GNU Emacs 25.3.1]
ziyourenxiang has joined #ocaml
FreeBirdLjj has joined #ocaml
emias has joined #ocaml
al-damiri has joined #ocaml
tane has quit [Quit: Leaving]
freyr has quit [Remote host closed the connection]
ziyourenxiang has quit [Ping timeout: 248 seconds]
Nephe has quit [Quit: No Ping reply in 180 seconds.]
Nephe has joined #ocaml
ahf has quit [Ping timeout: 260 seconds]
vbmithr has quit [Ping timeout: 240 seconds]
companion_cube has quit [Ping timeout: 240 seconds]
bacam has quit [Ping timeout: 260 seconds]
Asmadeus has quit [Ping timeout: 260 seconds]
vbmithr has joined #ocaml
bacam has joined #ocaml
Asmadeus has joined #ocaml
companion_cube has joined #ocaml
ahf has joined #ocaml
nicoo has quit [Remote host closed the connection]
AltGr has left #ocaml [#ocaml]
maelkum has quit [Ping timeout: 248 seconds]
eh_eff has joined #ocaml
bsima has left #ocaml [#ocaml]
TheLemonMan has joined #ocaml
Soni has quit [Ping timeout: 240 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
Soni has joined #ocaml
dejanr has quit []
dejanr has joined #ocaml
andreas__ has quit [Quit: Connection closed for inactivity]
FreeBirdLjj has joined #ocaml
dedgrant_ has joined #ocaml
tane has joined #ocaml
jnavila has joined #ocaml
dedgrant has quit [Ping timeout: 240 seconds]
nicoo has joined #ocaml
jnavila has quit [Ping timeout: 240 seconds]
shepi has quit [Quit: leaving]
TheLemonMan has joined #ocaml
jmiven has quit [Quit: co'o]
jmiven has joined #ocaml
jnavila has joined #ocaml
SpiceGuid has joined #ocaml
SpiceGuid has quit [Client Quit]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
kakadu has quit [Quit: Konversation terminated!]
FreeBirdLjj has quit [Ping timeout: 258 seconds]
samrat has quit [Ping timeout: 248 seconds]
jnavila has quit [Ping timeout: 264 seconds]
zv has quit [Ping timeout: 240 seconds]
CrazedProgrammer has quit [Remote host closed the connection]
zv has joined #ocaml
ygrek has joined #ocaml
shinnya has joined #ocaml
jnavila has joined #ocaml
kakadu has joined #ocaml
Algebr` has joined #ocaml
maarhart has joined #ocaml
kakadu_ has joined #ocaml
kakadu has quit [Ping timeout: 260 seconds]
maarhart has quit [Client Quit]
johnelse has quit [Ping timeout: 240 seconds]
dakk_ has joined #ocaml
jimmyrcom_ has joined #ocaml
eh_eff has quit [Ping timeout: 240 seconds]
dakk_ has quit [Ping timeout: 260 seconds]
ayxih has joined #ocaml
superherointj has quit [Quit: Leaving]
jnavila has quit [Ping timeout: 240 seconds]
sepp2k has quit [Quit: Leaving.]
slash^ has quit [Read error: Connection reset by peer]
jlam has quit [Quit: WeeChat 1.7.1]
jlam has joined #ocaml
amatheus has joined #ocaml
argent_smith has quit [Quit: Leaving.]
poindontcare has joined #ocaml
AlexRussia has joined #ocaml
amatheus has quit [Quit: amatheus]
AlexRussia has quit [Client Quit]
amatheus has joined #ocaml
_andre has quit [Quit: leaving]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
eh_eff has joined #ocaml
poindontcare has left #ocaml ["ERC (IRC client for Emacs 26.0.50)"]
johnelse has joined #ocaml
jnavila has joined #ocaml
johnelse has quit [Ping timeout: 240 seconds]
kakadu_ has quit [Ping timeout: 240 seconds]
kakadu_ has joined #ocaml
jnavila has quit [Read error: Connection reset by peer]
tane has quit [Quit: Leaving]
enterprisey has joined #ocaml
zv has quit [Quit: WeeChat 1.9]
jimmyrcom_ has quit [Ping timeout: 248 seconds]
Simn has quit [Ping timeout: 258 seconds]
sh0t has quit [Remote host closed the connection]
fraggle_ has joined #ocaml
demonimin has quit [Ping timeout: 240 seconds]
enterprisey has quit [Remote host closed the connection]
kerrhau has joined #ocaml
kakadu_ has quit [Remote host closed the connection]
ayxih has quit [Quit: Leaving]
ristos has quit [Quit: Connection closed for inactivity]
jimmyrcom_ has joined #ocaml
jimmyrcom_ has quit [Remote host closed the connection]
jimmyrcom_ has joined #ocaml
pierpa has joined #ocaml
eh_eff has quit [Ping timeout: 248 seconds]
jimmyrcom_ has quit [Ping timeout: 240 seconds]
jimmyrcom_ has joined #ocaml
jimmyrcom_ has quit [Remote host closed the connection]
jimmyrcom_ has joined #ocaml