ChanServ changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.02.1 announcement at http://ocaml.org/releases/4.02.html | Public channel logs at http://irclog.whitequark.org/ocaml
<nojb> ok there is a mantis issue for this: http://caml.inria.fr/mantis/view.php?id=6521
bytbox has joined #ocaml
artagnon has joined #ocaml
<artagnon> My compiler crashes with a strange bt: http://pastie.org/9793409
<artagnon> I can't get more information out of lldb or ocamldebug.
<artagnon> So I don't know where the error is occuring.
<nojb> looks like trying to dereference a null pointer with ctypes to me ...
<artagnon> Hm, does it mean that get_pointer_to_global is perhaps failing?
eyyub1 has quit [Ping timeout: 258 seconds]
Yoric has joined #ocaml
<nojb> I don’t know :)
<artagnon> It only happens with >1 anonymous functions.
<artagnon> I generate names for them by stringify'ing a counter ref.
<artagnon> This creates a string with fresh memory, right? "fn" ^ string_of_int !count
<nojb> yes
<artagnon> Any idea how to debug this?
<companion_cube> struktured: this functions is weird
<companion_cube> it's a map with a fold for each element?
Yoric has quit [Remote host closed the connection]
AlexRussia has quit [Ping timeout: 265 seconds]
abbe_ has joined #ocaml
AlexRussia has joined #ocaml
madroach has quit [Ping timeout: 250 seconds]
madroach has joined #ocaml
abbe has quit [Ping timeout: 258 seconds]
rgrinberg has quit [Quit: Leaving.]
abbe_ is now known as abbe
AltGr has joined #ocaml
appd has quit [Quit: Leaving...]
AlexRussia has quit [Ping timeout: 256 seconds]
NoNNaN has quit [Remote host closed the connection]
AlexRussia has joined #ocaml
NoNNaN has joined #ocaml
oscar_toro has joined #ocaml
jabroney has joined #ocaml
shinnya has quit [Ping timeout: 258 seconds]
<artagnon> Okay, it has nothing to do with anonymous functions; my compiler can't execute more than one toplevel function :|
boadie has quit [Remote host closed the connection]
BitPuffin has joined #ocaml
<artagnon> Found yet another bug!
<artagnon> whitequark: http://pastie.org/9793461
<artagnon> gptg cannot be interspersed with define_function statements.
rgrinberg has joined #ocaml
nojb has quit [Quit: nojb]
rand000 has quit [Quit: leaving]
nojb has joined #ocaml
Simn has quit [Quit: Leaving]
nullcat has joined #ocaml
jabroney has quit [Quit: Leaving.]
nuki has quit [Ping timeout: 250 seconds]
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
nullcat has joined #ocaml
joncfoo has joined #ocaml
nullcat has quit [Read error: Connection reset by peer]
nullcat has joined #ocaml
nojb has quit [Quit: nojb]
thomasga has quit [Quit: Leaving.]
nullcat has quit [Ping timeout: 240 seconds]
nojb has joined #ocaml
SomeDamnBody has joined #ocaml
vfoley- has joined #ocaml
hugomg has quit [Quit: Leaving]
nojb has quit [Quit: nojb]
darkf has joined #ocaml
nullcat has joined #ocaml
nullcat has quit [Client Quit]
rgrinberg has quit [Quit: Leaving.]
rgrinberg has joined #ocaml
AlexRussia has quit [Ping timeout: 256 seconds]
ygrek has joined #ocaml
nojb has joined #ocaml
artagnon has left #ocaml [#ocaml]
ontologiae has quit [Ping timeout: 245 seconds]
BitPuffin has quit [Ping timeout: 240 seconds]
AlexRussia has joined #ocaml
alkoma has joined #ocaml
<alkoma> what happen to using "module X = List" in repl to see the List interface? Doesn't work any more in OCaml 4.02
<Drup> no, use #show instead
<alkoma> Drup: that's awesome! thanks!
<struktured> companion_cube: something like that. I want to repeated call a function which depends on state (as a function arg) and emits a new state everytime it is evaluated.
AlexRussia has quit [Ping timeout: 256 seconds]
AlexRussia has joined #ocaml
<Drup> struktured: that's really a fold, you know :D
<struktured> Drup: yeah but how would I do that without writing my own function?
<Drup> well, I tend to call that "fold_map" in fact
<struktured> Drup: ah, thanks.
<Drup> but I don't use a state for that, the code is exactly like a fold where the accumulator is a pair of the accum and the new list
<struktured> what list?
<Drup> s/list/thing/
<Drup> with thing being something foldable
<struktured> so would you suggest fold_map is missing from gen, then?
<joncfoo> struktured: have a look at Gen's source - it's fairly straighforward to write your own state management
<joncfoo> good examples in there
<struktured> joncfoo: I mean, I wrote a one line function which does what I want, was looking for something more idiomatic tihng
<struktured> *thin/though
<Drup> rgrinberg: you should do a "24 days of OCaml" next year :D
<rgrinberg> Drup: why me :D
<Drup> because you're the one posting tons of links on reddit.
Yoric has joined #ocaml
<rgrinberg> oh, i'll consider it if you guest post for some things
<rgrinberg> tyxml, eliom, sedlex...
joncfoo has quit [Ping timeout: 245 seconds]
<rgrinberg> batteries?
<Drup> ahah
<rgrinberg> lol
<Drup> why not :p
<rgrinberg> simon can do containers, qcheck, cconv
<rgrinberg> yeah there's enough volume there...
Yoric has quit [Remote host closed the connection]
raphaelss has joined #ocaml
dpzmick has joined #ocaml
nullcat has joined #ocaml
nojb has quit [Ping timeout: 240 seconds]
<struktured> what does 24 days of ocaml mean exactly?
<struktured> 24 blog entries on it or something?
oscar_toro has quit [Ping timeout: 240 seconds]
samrat has joined #ocaml
nojb has joined #ocaml
<rgrinberg> struktured: look up 24 days of haskell
<rgrinberg> or 24 days of hackage
<struktured> rgrinberg: oh i see. thanks
manud has quit [Quit: Be back later ...]
seliopou has quit [Ping timeout: 258 seconds]
seliopou has joined #ocaml
PM` has quit [Ping timeout: 258 seconds]
PM` has joined #ocaml
seliopou has quit [Ping timeout: 258 seconds]
seliopou has joined #ocaml
jabroney has joined #ocaml
nullcat has quit [Remote host closed the connection]
larhat1 has quit [Quit: Leaving.]
boadie has joined #ocaml
boadie has quit [Read error: Connection reset by peer]
boadie has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
psy_ has joined #ocaml
jabroney has quit [Quit: Leaving.]
Pepe_ has quit [Quit: leaving]
travisbrady has joined #ocaml
relrod has quit [Excess Flood]
relrod_ has joined #ocaml
relrod_ is now known as relrod
mal`` has quit [Ping timeout: 245 seconds]
rgrinberg has quit [Quit: Leaving.]
mal`` has joined #ocaml
rgrinberg has joined #ocaml
travisbrady has quit [Quit: travisbrady]
samrat has joined #ocaml
chinglish has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
alkoma has quit [Remote host closed the connection]
samrat has joined #ocaml
alkoma has joined #ocaml
alkoma has quit [Remote host closed the connection]
ppjet has joined #ocaml
ygrek has quit [Ping timeout: 264 seconds]
ppjet is now known as Pepe_
alkoma has joined #ocaml
alkoma has quit [Remote host closed the connection]
alkoma has joined #ocaml
myyst has quit [Ping timeout: 265 seconds]
alkoma has quit [Remote host closed the connection]
myyst has joined #ocaml
flasheater has quit [Ping timeout: 264 seconds]
kapil__ has joined #ocaml
bugabinga has joined #ocaml
dpzmick has quit [Read error: Connection reset by peer]
dpzmick has joined #ocaml
nojb has quit [Quit: nojb]
raphaelss has quit [Ping timeout: 240 seconds]
alkoma has joined #ocaml
alkoma has quit [Remote host closed the connection]
kakadu has joined #ocaml
marynate has joined #ocaml
Dzyan has quit [Remote host closed the connection]
manud has joined #ocaml
manud has quit [Client Quit]
manud has joined #ocaml
<struktured> rgrinberg: oh i see. thanks
<struktured> sorry cat on keyboard
nullcat has joined #ocaml
SomeDamnBody has quit [Ping timeout: 244 seconds]
Valdo has quit [Ping timeout: 256 seconds]
rgrinberg has quit [Quit: Leaving.]
rgrinberg has joined #ocaml
rgrinberg has quit [Client Quit]
ygrek has joined #ocaml
boadie has quit [Remote host closed the connection]
davine has joined #ocaml
larhat has joined #ocaml
davine has left #ocaml [#ocaml]
nullcat has quit [Read error: Connection reset by peer]
marynate has quit [Read error: Connection reset by peer]
marynate has joined #ocaml
marynate has quit [Max SendQ exceeded]
marynate has joined #ocaml
larhat has quit [Read error: Connection reset by peer]
larhat has joined #ocaml
leowzukw has joined #ocaml
dpzmick has quit [Remote host closed the connection]
axiles has joined #ocaml
thomasga has joined #ocaml
malc_ has joined #ocaml
milosn has joined #ocaml
leowzukw has quit [Ping timeout: 246 seconds]
leowzukw has joined #ocaml
lostman_ has joined #ocaml
matason has joined #ocaml
<companion_cube> struktured: I think it's simpler if you implement this weird operator in your code, it would take more time to read the doc+understand what it does, than re-implementing it, for other user
<companion_cube> s
matason has quit [Ping timeout: 256 seconds]
<struktured> companion_cube: ok np. I was more curious if there is some composition of the other operators that would do it
<companion_cube> well, I don't think so, it doesn't get much simpler than what you wrote
<struktured> companion_cube: I wanted some approach without an explicit reference..
<companion_cube> a nested fold then?
<struktured> companion_cube: fold is fine, but it has to keep the stream non evaluated.. (like the lazy way map does it)
kapil__ has quit [Quit: Connection closed for inactivity]
<companion_cube> hmm right, that's really not a trivial behavior
<companion_cube> may I ask what you are using it for? :)
_andre has joined #ocaml
manud has quit [Quit: Be back later ...]
<struktured> companion_cube: reinforcement learning system- the environment is a generator
manud has joined #ocaml
manud has quit [Ping timeout: 245 seconds]
<companion_cube> hmmm, fold_map, really
<companion_cube> what's the signature again?
<struktured> companion_cube: val fold_map : ('a -> 'b -> 'b) -> 'b -> 'a Gen.t -> 'b Gen.t
<whitequark> hey companion_cube
<whitequark> ppx_deriving_cconv :]
<companion_cube> struktured: ok, it looks good actually
<companion_cube> whitequark: yes?
<companion_cube> it requires a bit more work...
<companion_cube> are you interested?
<struktured> what is deriving_cconv?
<companion_cube> struktured: I'd be happy to merge a PR for fold_map
<struktured> companion_cube: ok will do
<companion_cube> it's a deriver for a kind of "generic" encoding/decoding system
<companion_cube> (where "generic" ranges over "formats isomorphic to json/sexp/...")
<whitequark> companion_cube: cconv could be useful to replace "with sexp" everywhere
<companion_cube> I'm wonder whether people would find it too complicated :s
<companion_cube> (although, yes, it's more flexible)
<whitequark> have you *seen* sexplib
<companion_cube> I tried to avoid it :D
<struktured> companion_cube: so non binary encodings, then?
<companion_cube> I think it could do binary encodings
<companion_cube> but it works for some "shapes" of encoding formats
<companion_cube> anyway, https://github.com/c-cube/cconv
<companion_cube> (the ppx_deriving_cconv just derives definitions for this library)
<struktured> cool, sounds nifty
sgnb` has joined #ocaml
sgnb has quit [Ping timeout: 264 seconds]
raphaelss has joined #ocaml
_5kg has quit [Ping timeout: 244 seconds]
ontologiae has joined #ocaml
leowzukw_ has joined #ocaml
leowzukw_ has quit [Client Quit]
pii4 has quit [Quit: [-.-]...]
marynate has quit [Ping timeout: 258 seconds]
NoNNaN has quit [Ping timeout: 250 seconds]
marynate has joined #ocaml
marynate has quit [Read error: Connection reset by peer]
lordkryss has joined #ocaml
nojb has joined #ocaml
kapil__ has joined #ocaml
darkf_ has joined #ocaml
AltGr has left #ocaml [#ocaml]
darkf has quit [Ping timeout: 258 seconds]
nojb has quit [Quit: nojb]
nojb has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
dario_ has joined #ocaml
<dario_> Hello everyone!
<adrien> hi
<dario_> Quick question: is no-alias-deps fully supported by the toolchain (OCamlbuild, OCamldep) as of 4.02.1?
nuki has joined #ocaml
<dario_> OCamlbuild seems to support a "no-alias-deps" tag and also a "open(Foo)" tag (the latter is undocumented)
<whitequark> it is, afaik
<dario_> However, I'm having trouble compiling a simple dummy example using OASIS
<dario_> I've manually added to the _tags file the following:
<dario_> <src/*>: no_alias_deps
hugomg has joined #ocaml
<dario_> <src/*> and not <src/foo.ml>: open(Foo)
nicoo has quit [Ping timeout: 250 seconds]
<whitequark> ok
<dario_> The only modules in "src" are foo_a.ml, foo_b.ml, and foo.ml
<dario_> (This is a dummy example)
<dario_> Compilation fails with a circular build error
<dario_> (The sort one would expect before 4.02)
ontologiae has quit [Ping timeout: 245 seconds]
ebzzry has quit [Remote host closed the connection]
<dario_> Has someone tried no-alias-deps with OCamlbuild + OCamldep?
<whitequark> I did, but I haven't used open
<whitequark> actually.
<whitequark> of course it results in a circular build error.
<whitequark> you can't infer the interface for Foo before you build foo_a.mli
<whitequark> try not opening it in the .mli's, at least
<dario_> I have no .mli's. This is a dummy example with only .ml's
_5kg has joined #ocaml
<dario_> I'm trying to replicate the example in the OCaml manual (Sec. 7.17)
samrat has joined #ocaml
<whitequark> hm
<whitequark> you do have .mli's, they're automatically inferred by ocamlbuild
<dario_> Okay, I've tweaked the _tags file:
<dario_> <src/foo.ml*>: no_alias_deps
larhat1 has joined #ocaml
<dario_> <src/*> and not <src/foo.ml*>: open(Foo)
<dario_> Still the same circular build problem...
<whitequark> the short answer is, remove open
<whitequark> oh, wait, I see the example in the manual now
<whitequark> hmmm
<dario_> If I remove open, I won't be able to refer to Foo_a as just A...
<whitequark> indeed, can you report a bug on mantis?
samrat has quit [Client Quit]
BitPuffin has joined #ocaml
<dario_> Yeah... I'll the caml-list first. The problem may be just a tiny issue I'm forgetting somewhere...
larhat has quit [Ping timeout: 264 seconds]
nojb has quit [Quit: nojb]
matason has joined #ocaml
ineol has joined #ocaml
<dario_> Btw, whitequark, since I have your hear, I have an unrelated question about ppx_deriving...
<whitequark> sure
<dario_> Do you have plans for supporting "constructor functions"? Example:
<dario_> type t = {a: int; b: float} [@@deriving make]
<dario_> Would create a function "val make: int -> float -> t"
<whitequark> that's actually already implemented
<dario_> Hmm, issue #14 seems a bit different...
<whitequark> oh, right, different issue
<dario_> I'm talking about a constructor for the whole value "t", not just individual fields/variants
<dario_> s/value/type/
<whitequark> try [@@deriving create].
<dario_> Ah, that's it! Awesome, thanks!
<whitequark> I should document it.
badon_ has joined #ocaml
badon has quit [Disconnected by services]
badon_ is now known as badon
marynate has joined #ocaml
darkf_ is now known as darkf
ygrek has quit [Ping timeout: 256 seconds]
badon has quit [Ping timeout: 272 seconds]
<dario_> Great! I assume that if the type is simply called "t", the function is "create" and not "create_t", right?
<whitequark> yes
samrat has joined #ocaml
badon has joined #ocaml
<dario_> I've sent a message about the no-alias-deps to the caml-list. Hopefully someone identify the problem...
nojb has joined #ocaml
nojb has quit [Quit: nojb]
pii4 has joined #ocaml
thomasga has quit [Quit: Leaving.]
samrat has quit [Quit: Computer has gone to sleep.]
keen___________8 has quit [Read error: Connection reset by peer]
keen___________8 has joined #ocaml
thomasga has joined #ocaml
sgnb` is now known as sgnb
thomasga has quit [Quit: Leaving.]
<thorsten1> I'm trying to build coq and it ends up in the ocaml error message about inconsistent assumptions of .cmi files in my system. How should I interpret and fix this error? http://pastebin.com/Z1caqDNX
<def`> thorsten1: leftover from previous builds
<def`> ouch no, in this case, it seems not to be your fault but arch packages might just not be in sync
boadie has joined #ocaml
<def`> I would use opam if I was you, instead of arch packages
<def`> otherwise, you probably need to recompile camlp4
<thorsten1> oh wait, i indeed used opam some weeks ago. Maybe that's the problem
<def`> no the problem is extra/ocaml 4.02.1-1 vs extra/camlp4 4.02.0+1-1
<thorsten1> the strange thing is that i don't get this error on my laptop with same distro/architecture/packages
<def`> :/ strange
<def`> use repacman to extract the coq version from your laptop :)
jgjl has joined #ocaml
<def`> (on my arch install, I use opam to manage everything, relying on ocaml packages is… unreliable in my experience)
<thorsten1> can I somehow find out what this inconsistency between these files is all about?
<def`> yep, camlp4 was built for 4.02.0, while ocaml is 4.02.1
ggole has joined #ocaml
<def`> files are binary incompatible
<def`> (each file is hashed, when compiling hashes have to be compatible, you can use ocamlobjinfo to get a summary of dependencies of a given file)
leowzukw has quit [Quit: Lost terminal]
<thorsten1> indeed, i just downgraded ocaml (4.02.1-1 => 4.02.0-1) and now it seems to build. (sorry but i'd like an arch package to have it available for all users on my machine...)
Simn has joined #ocaml
joncfoo has joined #ocaml
<thorsten1> thanks for pointing the version thing out and for repacman (just backing up my old coq installation...)
<thorsten1> :-)
<def`> np
AlexRussia has quit [Ping timeout: 264 seconds]
nojb has joined #ocaml
matason has quit [Ping timeout: 244 seconds]
nojb has quit [Quit: nojb]
keen___________9 has joined #ocaml
keen___________8 has quit [Ping timeout: 244 seconds]
jgjl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
pii4 has quit [Ping timeout: 240 seconds]
pii4 has joined #ocaml
AlexRussia has joined #ocaml
nicoo has joined #ocaml
jgjl has joined #ocaml
nuki has quit [Quit: ChatZilla 0.9.91.1 [Iceweasel 31.3.0/20141203072641]]
NoNNaN has joined #ocaml
milosn has quit [Ping timeout: 244 seconds]
nojb has joined #ocaml
hilquias has joined #ocaml
slash^ has joined #ocaml
lostman_ has quit [Quit: Connection closed for inactivity]
joncfoo has quit [Ping timeout: 240 seconds]
troydm has quit [Quit: What is hope? That all of your wishes and all of your dreams come true? (C) Rau Le Creuset]
acieroid` is now known as acieroid
samrat has joined #ocaml
thomasga has joined #ocaml
troydm has joined #ocaml
enitiz has joined #ocaml
jpdeplaix` has joined #ocaml
thomasga1 has joined #ocaml
thomasga has quit [Read error: Connection reset by peer]
<vbmithr> whitequark: I'd like to bind http://doc.libsodium.org/advanced/ed25519-curve25519.html in ocaml-sodium
<vbmithr> Which API would you choose ?
<vbmithr> I'm asking because I'm not sure what should be the signature.
<whitequark> Box.secret_key -> Sign.secret_key ?
<whitequark> well, or, rather
<whitequark> yeah, that.
<whitequark> and the same for public key.
nojb has quit [Quit: nojb]
rand000 has joined #ocaml
nojb has joined #ocaml
nojb has quit [Client Quit]
samrat has quit [Quit: Computer has gone to sleep.]
<vbmithr> Well, it's the other way around.
<vbmithr> Sign.secret_key -> Box.secret_key
<vbmithr> But ok
<vbmithr> So the whole "storage" thing is _just_ to have both Bigbytes and Bytes ?
<whitequark> yes
<whitequark> the problem with that is?
shinnya has joined #ocaml
<vbmithr> I thought it might be for security purpose
<vbmithr> like type 'a key is immutable and stored in a special region of memory
<whitequark> that would not be too bad to have
<vbmithr> No… nothing special, I just thought there was more to it
<whitequark> but it's irrelevant to storage
<whitequark> since key is always in bytes
<vbmithr> Ok.
<vbmithr> Anyway, I'm implementing ed25519-curve25519 following your suggestion then.
nojb has joined #ocaml
Procian has joined #ocaml
<Procian> Hey, anyone used Scala much?
jabroney has joined #ocaml
nojb has quit [Quit: nojb]
nojb has joined #ocaml
enitiz has quit [Quit: Leaving]
raphaelss has quit [Ping timeout: 250 seconds]
Thooms has joined #ocaml
nojb has quit [Quit: nojb]
jgjl has quit [Quit: Textual IRC Client: www.textualapp.com]
Anarchos has joined #ocaml
nojb has joined #ocaml
milosn has joined #ocaml
raphaelss has joined #ocaml
struktured has quit [Ping timeout: 258 seconds]
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
nojb has quit [Quit: nojb]
malc_ has quit [Quit: leaving]
matason has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
slash^ has joined #ocaml
samrat has joined #ocaml
chinglish has quit [Ping timeout: 245 seconds]
MercurialAlchemi has joined #ocaml
nojb has joined #ocaml
jabroney has quit [Quit: Leaving.]
raphaelss has quit [Quit: leaving]
darkf has quit [Quit: Leaving]
travisbrady has joined #ocaml
ontologiae has joined #ocaml
NoNNaN has quit [Remote host closed the connection]
enitiz has joined #ocaml
etehtsea has joined #ocaml
vfoley- has quit [Remote host closed the connection]
NoNNaN has joined #ocaml
rand000 has quit [Quit: leaving]
nojb has quit [Quit: nojb]
kapil__ has quit [Quit: Connection closed for inactivity]
ebzzry has joined #ocaml
nojb has joined #ocaml
etehtsea has quit [Quit: Computer has gone to sleep.]
<whitequark> companion_cube: containers *still* fail https://travis-ci.org/whitequark/opam-query/builds/44062250
jabroney1 has joined #ocaml
jabroney1 has quit [Client Quit]
jabroney1 has joined #ocaml
travisbrady has quit [Quit: travisbrady]
Muzer has quit [Excess Flood]
<companion_cube> --disable-advanced --enable-docs <- that must be why
Thooms has quit [Quit: WeeChat 1.0.1]
Muzer has joined #ocaml
Muzer has quit [Excess Flood]
Muzer has joined #ocaml
larhat1 has quit [Quit: Leaving.]
<companion_cube> whitequark: that should work, I guess. my CI already has stuff installed, so it's not perfect
travisbrady has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 255 seconds]
nicoo has quit [Ping timeout: 250 seconds]
travisbrady has quit [Client Quit]
<whitequark> companion_cube: aaaargh
<whitequark> # + /home/whitequark/.opam/4.02.1/bin/ocamlfind ocamldep -package bytes -package sequence -modules src/advanced/CCLinq.mli > src/advanced/CCLinq.mli.depends
<whitequark> # ocamlfind: Package `sequence' not found
<whitequark> get your shit together, okay
<companion_cube> which version do you use?
struk|dtut has joined #ocaml
<whitequark> i've tried to upgrade to 0.7 just now
<companion_cube> well it should work, there's a flag in the opam file
<companion_cube> -_-
<companion_cube> unless it's for documentation again
<whitequark> doesn't seem so
<whitequark> I have gen installed, but not sequence
matason has quit [Ping timeout: 244 seconds]
<companion_cube> I mean, if sequence isn't installed, it shouldn't try to compile this module
badkins has joined #ocaml
<companion_cube> if you disable the generation of documentation, does it still fail?
nicoo has joined #ocaml
badkins has quit [Read error: Connection reset by peer]
<whitequark> no
marynate has quit [Quit: Leaving]
nojb has quit [Quit: nojb]
rgrinberg has joined #ocaml
milosn has quit [Ping timeout: 264 seconds]
travisbrady has joined #ocaml
travisbrady has quit [Quit: travisbrady]
raphaelss has joined #ocaml
MrScout has joined #ocaml
jpdeplaix` has quit [Quit: WeeChat 0.4.0]
jpdeplaix` has joined #ocaml
jpdeplaix` has quit [Client Quit]
ingsoc has joined #ocaml
badkins has joined #ocaml
waneck has joined #ocaml
waneck_ has joined #ocaml
<ggole> Damn, %a just ignores the width.
artagnon has joined #ocaml
<artagnon> Does someone know how to use arc properly?
fraggle__ has quit [Remote host closed the connection]
<artagnon> I have no idea how to send dependent commits.
olauzon has joined #ocaml
<whitequark> I think you meant to say this on #llvm
<whitequark> I don't actually use arc, only web interface
<artagnon> Okay, I'll ask there.
<artagnon> How are the patches looking?
<whitequark> I've replied in the patch
<artagnon> Ok, will amend.
rgrinberg has quit [Quit: Leaving.]
MrScout has quit [Remote host closed the connection]
testcocoon has quit [Ping timeout: 250 seconds]
<artagnon> Any clue what's wrong with the second patch?
<whitequark> no clue
<whitequark> break on LLVMGetPointerToFunction in both cases
<whitequark> also, dump module to bitcode and ensure the bitcode is byte-for-byte identical
<struk|dtut> Procian: re: scala, I purposely try to avoid it. Not a fan of nulls. But its one of the better jvm based languages
samrat has quit [Quit: Computer has gone to sleep.]
milosn has joined #ocaml
MrScout has joined #ocaml
<whitequark> artagnon: have you verified it actually works without finalize?
<artagnon> Yeah.
<whitequark> ok
samrat has joined #ocaml
<artagnon> It was working without finalize earlier, but I put it in to be safe :P
<artagnon> I saw the comment you'd pointed out too.
<whitequark> how should I attribute the patch?
<artagnon> Um, just write my full name?
<whitequark> nevermind, found the From: header
<artagnon> wrt to the second patch, didn't you mean break on getFunctionAddress?
<artagnon> Which I did, and found out that the string being passed was clean.
<whitequark> then the only difference can be in the state of EE
<whitequark> i.e. either different bitcode or something else
<artagnon> But it's going to MCJIT.
<artagnon> Maybe something in the options?
<artagnon> How do I dump the bitcode?
MrScout has quit [Remote host closed the connection]
MrScout has joined #ocaml
MrScout has quit [Read error: Connection reset by peer]
MrScout has joined #ocaml
<artagnon> Erm, where's the Makefile for this thing?
<artagnon> I need to link to Llvm_bitcodewriter
<whitequark> Makefile?
<whitequark> -package llvm.bitwriter
<artagnon> Yeah, where do I stick that?
<whitequark> how do you build it currently?
<artagnon> make check-lit ...
<whitequark> oh
<whitequark> it's in the first line of the test
<whitequark> something like "llvm.cma"
<whitequark> add "llvm_bitwriter.cma" to it
<artagnon> Ah, got it. Thanks.
<artagnon> Wait, where is this cma?
<artagnon> Just the -package ... thing works.
<whitequark> ok
<artagnon> So I got the bitcode.
<artagnon> Now what?
<whitequark> now compare it to the bitcode from your working C example
<artagnon> I don't have an exactly equivalent C example.
<artagnon> Okay, I'll make one.
dario_ has quit [Ping timeout: 244 seconds]
<artagnon> Should be trivial enough.
testcocoon has joined #ocaml
nojb has joined #ocaml
waneck_ has quit [Quit: Leaving]
matason has joined #ocaml
etehtsea has joined #ocaml
<artagnon> whitequark: They're different. Significantly.
<artagnon> (if that helps even an iota)
maattdd has quit [Quit: WeeChat 1.0.1]
travisbrady has joined #ocaml
<whitequark> um
<whitequark> now make them identical.
<whitequark> here's your bug.
ggole has quit []
_andre has quit [Quit: leaving]
am2904 has joined #ocaml
Reventlov has quit [Ping timeout: 240 seconds]
am2904 has quit [Client Quit]
nojb has quit [Ping timeout: 256 seconds]
<Procian> struk|dtut: I'm not a fan, but I'm trying to figure out how to convert simple functors to Scala.
<artagnon> How do I know that OCaml is calling into exactly the same functions as the C API?
<whitequark> by looking at the source
<whitequark> and/or single-stepping it in gdb
<artagnon> Isn't there an easier way to approach this problem?
travisbrady has quit [Quit: travisbrady]
<companion_cube> whitequark: could you install containers in the end?
<whitequark> artagnon: no
<whitequark> companion_cube: I don't remember
Reventlov has joined #ocaml
travisbrady has joined #ocaml
<struk|dtut> Procian: maybe generic classes is the closest you'd get for 1 to 1 relationship? http://docs.scala-lang.org/tutorials/tour/generic-classes.html
manud has joined #ocaml
shinnya has quit [Ping timeout: 255 seconds]
shinnya has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
MercurialAlchemi has joined #ocaml
Procian has quit [Ping timeout: 252 seconds]
rgrinberg has joined #ocaml
fraggle_ has joined #ocaml
<travisbrady> rgrinberg: have you done much cohttp benchmarking? I’m hitting this https://github.com/travisbrady/cohttp-lwt-hello/blob/master/lib/hello.ml with siege and the results aren’t very encouraging. slow, socket timeouts, etc. Not sure if I’ve done everything correctly.
<rgrinberg> travisbrady: are you testing on linux or osx?
<travisbrady> osx currently. Bad idea?
<rgrinberg> make sure you aren't using select as the backend for lwt
etehtsea has quit [Quit: Computer has gone to sleep.]
<rgrinberg> i'd only ever benchmark on linux regardless however
samrat has quit [Quit: Computer has gone to sleep.]
<rgrinberg> transfinite: also, don't use lwt_unix.run :D
<rgrinberg> travisbrady: i mean
<rgrinberg> since it's getting removed
<whitequark> lol benchmarks on os x
<companion_cube> o/ rgrinberg
<companion_cube> did you have a reddit frenzy?
<rgrinberg> companion_cube: somewhat :D
<rgrinberg> been slacking, so i caught up
boadie has quit [Remote host closed the connection]
<travisbrady> whitequark: this isn’t intended to be a formal benchmark. I just happened to run it on osx because that is the brand of laptop I own.
<travisbrady> The idea is to implement this https://www.techempower.com/benchmarks/#section=data-r9&hw=peak&test=json and test on ec2
<rgrinberg> travisbrady: it's still a bad idea though. Have you ever seen an OSX server in the wild? Better just to tune the benchmark once on linux IMO
<whitequark> it's not that osx servers don't exist
<whitequark> it's that osx is slow as hell
<rgrinberg> that too
<rgrinberg> I'm actually not as familiar with lwt but I know async is a dog on osx and only fast on linux b/c of epoll
<whitequark> well, osx has kqueue
<whitequark> it's a problem of async foremost
<rgrinberg> what's the default backend for lwt on osx?
<whitequark> I dunno
malo has joined #ocaml
badkins has quit []
<whitequark> libev if there's libev. otherwise select or poll
<whitequark> actually, just select
<rgrinberg> travisbrady: that should explain the terrible performance. not that i guarantee anything good :D
travisbrady has quit [Quit: travisbrady]
raphaelss has quit [Ping timeout: 252 seconds]
milosn has quit [Ping timeout: 265 seconds]
ingsoc has quit [Ping timeout: 255 seconds]
manud has quit [Read error: Connection reset by peer]
travisbrady has joined #ocaml
matason has quit [Ping timeout: 245 seconds]
rafaelgomez14 has joined #ocaml
rafaelgomez14 has quit [Read error: Connection reset by peer]
travisbrady has quit [Client Quit]
travisbrady has joined #ocaml
travisbrady has quit [Client Quit]
manud has joined #ocaml
raphaelss has joined #ocaml
raphaelss has quit [Quit: leaving]
travisbrady has joined #ocaml
nojb has joined #ocaml
travisbrady has quit [Quit: travisbrady]
AlexRussia has quit [Ping timeout: 264 seconds]
travisbrady has joined #ocaml
AlexRussia has joined #ocaml
Reventlov has quit [Quit: leaving]
Reventlov has joined #ocaml
olauzon has quit [Quit: olauzon]
<artagnon> whitequark: gfa seems to be broken :'(
<artagnon> I just sent you an email about it.
<whitequark> gfa?
<artagnon> getFunctionAddress.
<artagnon> It only works with one function.
<artagnon> With multiple functions, it segfaults.
<artagnon> Not gfa itself, but the caller who tries to dereference a NULL pointer.
<whitequark> well, so gfa returns NULL
<whitequark> trace it and figure out why exactly it returns NULL.
<artagnon> 0 to be precise.
<artagnon> The problem is in MCJIT::getSymbolAddress, I guess.
ineol has quit [Quit: ineol]
AlexRussia has quit [Ping timeout: 252 seconds]
<artagnon> Can you give me a quick primer on lldb with C++?
<artagnon> I try to break on MCJIT::getSymbolAddress, and it says no such location.
<whitequark> lldb?
<whitequark> use gdb
<artagnon> I thought lldb was better.
<whitequark> I dunno, I can't stand its interface
* artagnon gets gdb
thomasga1 has quit [Quit: Leaving.]
travisbrady has quit [Quit: travisbrady]
thomasga has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 255 seconds]
axiles has quit [Remote host closed the connection]
MercurialAlchemi has joined #ocaml
oriba has joined #ocaml
AlexRussia has joined #ocaml
art-w_ has quit [Ping timeout: 255 seconds]
travisbrady has joined #ocaml
<travisbrady> Anyone know how to pass —enable-libev to `opam install lwt`? It’s doing `—disable-libev` despite my having installed libev
<whitequark> opam install conf-libev
MercurialAlchemi has quit [Ping timeout: 265 seconds]
AlexRussia has quit [Ping timeout: 244 seconds]
nojb has quit [Quit: nojb]
<travisbrady> whitequark: excellent. thank you.
rgrinberg has quit [Quit: Leaving.]
oriba_ has joined #ocaml
rgrinberg has joined #ocaml
oriba has quit [Ping timeout: 256 seconds]
struktured has joined #ocaml
<Drup> rgrinberg: calm down, you should distilate the reddit posts, not pour them like that x)
AlexRussia has joined #ocaml
<rgrinberg> Drup: xml_of_ocaml is really exciting
<rgrinberg> i thought the revised syntax was an improvement
<rgrinberg> this is a new level
<Drup> >o<
<struktured> never thought I'd hear someone be excited about xml parsing nowadays :)
<Drup> urgh
<Drup> it's camlp4 based
<pippijn> rgrinberg: is it bidirectional?
<pippijn> rgrinberg: can I use XSLT to transform ocaml?
<pippijn> looks like no
<pippijn> useless
<rgrinberg> pippijn: you have a knack for inventing new preprocessor technology
<Drup> I don't think it's bi-directional, thanks god
<pippijn> Drup: useless
<pippijn> camlp4 already has an ast dumper
<Drup> It's a shame
<Drup> you can't downvote github projects.
<pippijn> lucky
<pippijn> for me
<rgrinberg> which reminds me
<rgrinberg> whatever happened to ocamlduce
<pippijn> it got reduced to garbage
AlexRussia has quit [Ping timeout: 244 seconds]
Bluddy has joined #ocaml
kakadu has quit [Quit: Konversation terminated!]
<companion_cube> xml_of_ocaml.. wtf
<Bluddy> whitequark: i'm having trouble using ppx_deriving with ocamlbuild. I use <src/**/*> : package(ppx_deriving.std) and ocaml tells me that tag package doesn't expect a parameter.
<Bluddy> and nothing gets generated
Muzer has quit [Excess Flood]
<whitequark> ocamlbuild -use-ocamlfind
Submarine has quit [Ping timeout: 250 seconds]
<Bluddy> awesome. I forgot about that whole controversy. Thanks
Submarine has joined #ocaml
<companion_cube> rgrinberg: is that you who wrote the sedlex + batParserCo gist?
<companion_cube> I didn't think people used batParserCo
<rgrinberg> companion_cube: not me. but that's why i found it interesting
Muzer has joined #ocaml
<rgrinberg> never thought that anyone cared about batParserCo either
alkoma has joined #ocaml
<Bluddy> whitequark: what's an easy way to derive show for a functor applied from the standard lib (e.g. Map.Make)?
<companion_cube> today I used a bit my S-expr parser, it worked well ^^
AlexRussia has joined #ocaml
enitiz has quit [Quit: Leaving]
tharugrim has quit [Ping timeout: 244 seconds]
<whitequark> Bluddy: what would it do?
<whitequark> note that ppx_deriving currently does not support maps at all
<Bluddy> really? that sucks
<whitequark> well, it's supposed to print objects using ocaml literal syntax
<whitequark> but there's no map literal
tharugrim has joined #ocaml
<Bluddy> ok well I don't care about the literal syntax thing. It could always do the same thing haskell does and print Map.of_list and then the list
<Bluddy> but I just wanted to see the contents
<whitequark> there's no Map.of_list
<Drup> he probably means "to_list" and it's call "bindings"
<whitequark> no, of_list.
<whitequark> ppx_deriving outputs the syntax to *construct* a thing
<whitequark> there's no Map.of_list, but LOL STDLIB
<whitequark> er
<whitequark> because
<Drup> ah, okay
<Drup> that's a very bad reason not to print something :(
<Bluddy> well, there should be a map.of_list
<Bluddy> but that's beside the point
<whitequark> anyway that does not solve the functor issue
<whitequark> I have no way to figure out that a given functor is an instantiation of Map.S
<Bluddy> hmm
<Drup> the only way would be to annot the functor application.
<whitequark> yeah, and what if it's in another module?
<Drup> another functor, you mean ?
<Drup> you could allow to register a deriver on any Make functor
<Drup> and special case for Hashtbl.Make and Map.Make
<whitequark> register a deriver?
<whitequark> what?
<Drup> grmbl
<Bluddy> If you could modify the original functor, that would be fine, right? The signature would include the needed functions and all would be well.
<Drup> register a derived instance I mean
<Bluddy> The problem is that you need to modify the functor after the fact
<Drup> (or rather, the schema of a derived instance)
<Drup> say "with this Make functor, you can derive a show instance this way ..."
<whitequark> module X = Hashtbl.Make
<Drup> and then, when you annot a functor application, it will do it like that
<whitequark> do you expect me to track aliases or what?
<Drup> of course not, it wouldn't work along aliases, but that's already the case for deriving on types anyway ~_~
<Drup> "type 'a foo = 'a list" already breaks, I don't see what's surprising here
<artagnon> I don't get how to debug C++ with gdb :|
<artagnon> On a line which has EE, I can't print EE (undefined symbol). What gives?
<Bluddy> oh man this is painful. back to doing it by hand then
enitiz has joined #ocaml
AlexRussia has quit [Ping timeout: 256 seconds]