companion_cube changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.11 release notes: https://caml.inria.fr/pub/distrib/ocaml-4.11/notes/Changes | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
ransom has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Haudegen has quit [Ping timeout: 272 seconds]
vicfred has joined #ocaml
wonko7 has quit [Ping timeout: 264 seconds]
<oni-on-ion> ouch, JSOfOCairo in opam cannot be used for ocaml 4.06 or later
lizzin_ has joined #ocaml
yomimono has quit [Ping timeout: 272 seconds]
mxns has quit [Ping timeout: 240 seconds]
runciter has quit [Ping timeout: 256 seconds]
daimrod has quit [Ping timeout: 265 seconds]
daimrod has joined #ocaml
runciter has joined #ocaml
ransom has joined #ocaml
Tuplanolla has quit [Quit: Leaving.]
lizzin_ has quit [Ping timeout: 256 seconds]
ransom__ has joined #ocaml
ransom has quit [Ping timeout: 256 seconds]
mxns has joined #ocaml
mxns has quit [Ping timeout: 240 seconds]
vicfred has quit [Ping timeout: 256 seconds]
lizzin has joined #ocaml
lizzin is now known as Guest69351
vicfred has joined #ocaml
Guest69351 has quit [Ping timeout: 260 seconds]
mfp has quit [Ping timeout: 256 seconds]
vicfred_ has joined #ocaml
vicfred has quit [Ping timeout: 260 seconds]
DanC has quit [Ping timeout: 258 seconds]
mxns has joined #ocaml
DanC has joined #ocaml
madroach_ has joined #ocaml
madroach has quit [Ping timeout: 256 seconds]
vicfred_ has quit [Quit: Leaving]
mxns has quit [Ping timeout: 264 seconds]
lizzin has joined #ocaml
lizzin is now known as Guest62659
Guest62659 has quit [Ping timeout: 240 seconds]
urek has quit [Ping timeout: 240 seconds]
ransom__ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ransom has joined #ocaml
waleee-cl has quit [Quit: Connection closed for inactivity]
lizzin_ has joined #ocaml
narimiran has joined #ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 240 seconds]
nkatte has quit [Ping timeout: 272 seconds]
steenuil has joined #ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 265 seconds]
ransom has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ransom has joined #ocaml
adrianbrink has quit [Read error: Connection reset by peer]
banjiewen_ has quit [Read error: Connection reset by peer]
SrPx has quit [Read error: Connection reset by peer]
adrianbrink has joined #ocaml
banjiewen_ has joined #ocaml
SrPx has joined #ocaml
lizzin_ has quit [Ping timeout: 264 seconds]
ansiwen has quit [Quit: ZNC 1.7.1 - https://znc.in]
ansiwen has joined #ocaml
borne has quit [Ping timeout: 260 seconds]
borne has joined #ocaml
troydm has quit [Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset]
troydm has joined #ocaml
nkatte has joined #ocaml
<d_bot> <joris> @Lupus if you mean you raise again exn in match case and if lose baxkgrace afaik what you want is reraise
decentpenguin has quit [Quit: ZNC crashed or something]
decentpenguin has joined #ocaml
shawnw has joined #ocaml
TC01 has quit [Ping timeout: 260 seconds]
TC01_ has joined #ocaml
nullcone has joined #ocaml
Haudegen has joined #ocaml
<d_bot> <Lupus> what I do is `%reraise`, but final backtrace is the one where reraise happens. I tried printing backtrace right after I caught exception, and also got fresh backtrace instead of original one
nkatte has quit [Ping timeout: 272 seconds]
<d_bot> <Lupus> @antron explained to me that due to fact that lwt is propagating exception via continuations that do not share the same stack, OCaml discards the backtrace, I reached out to wider audience as Anton does not remember the details on how OCaml is doing that and what has changed in this regard with recent releases
borne has quit [Ping timeout: 272 seconds]
DanC has quit [Ping timeout: 256 seconds]
urek has joined #ocaml
DanC has joined #ocaml
wonko7 has joined #ocaml
hannes has quit [Ping timeout: 260 seconds]
DanielRichman has joined #ocaml
DanielRichman has quit [Remote host closed the connection]
DanielRichman has joined #ocaml
DanielRichman has quit [Remote host closed the connection]
shawnw has quit [Ping timeout: 260 seconds]
hnOsmium0001 has quit [Quit: Connection closed for inactivity]
DanielRichman has joined #ocaml
DanielRichman has quit [Client Quit]
DanielRichman has joined #ocaml
bartholin has joined #ocaml
shawnw has joined #ocaml
mfp has joined #ocaml
neiluj has quit [Ping timeout: 256 seconds]
urek__ has joined #ocaml
urek has quit [Ping timeout: 258 seconds]
TheLemonMan has joined #ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 246 seconds]
urek__ has quit [Ping timeout: 258 seconds]
berberman_ has quit [Quit: ZNC 1.7.5 - https://znc.in]
berberman has joined #ocaml
tryte has quit [Remote host closed the connection]
tryte has joined #ocaml
narimiran has quit [Ping timeout: 264 seconds]
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
narimiran has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
ygrek has joined #ocaml
neiluj has joined #ocaml
neiluj has quit [Quit: leaving]
urek has joined #ocaml
urek has quit [Ping timeout: 260 seconds]
urek has joined #ocaml
urek__ has joined #ocaml
urek has quit [Ping timeout: 264 seconds]
waleee-cl has joined #ocaml
Haudegen has joined #ocaml
ygrek has quit [Remote host closed the connection]
ygrek has joined #ocaml
berberman_ has joined #ocaml
<d_bot> <Lupus> side question: is there a good library for thrift support for OCaml?
berberman has quit [Ping timeout: 258 seconds]
berberman_ has quit [Max SendQ exceeded]
berberman has joined #ocaml
berberman has quit [Max SendQ exceeded]
berberman has joined #ocaml
Tuplanolla has joined #ocaml
<d_bot> <Anurag> Have you tried https://opam.ocaml.org/packages/thrift/ ?
<d_bot> <Lupus> not yet, last time I glanced over - I noticed that it's a copy of some sources from apache org and decided to take a look at thrift some time later... 😄
mxns has joined #ocaml
<d_bot> <Anurag> I believe it was extracted from the official sources to make it easy to use with opam?
ransom has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ransom has joined #ocaml
ygrek has quit [Remote host closed the connection]
ygrek has joined #ocaml
bartholin has quit [Quit: Leaving]
ygrek has quit [Remote host closed the connection]
ygrek has joined #ocaml
lizzin has joined #ocaml
lizzin is now known as Guest44209
Guest44209 has quit [Ping timeout: 240 seconds]
nullcone has quit [Quit: Connection closed for inactivity]
<zozozo> has anyone encountered the errror: "Error: This variant or record definition does not match that of type [...] Their kinds differ." ? I'm trying to re-export a type definition, using something along the lines of type t = Some.Module.t = A | B of int
<zozozo> and I was wondering what the "kind" refers to, and how to solve the error (well I can always remove the type equality, but as these things will be marshalled, it would be nice to check the equality, ^^)
<octachron> kind means variant, record or open variant here.
<companion_cube> Also the type arity
<zozozo> hm.. that's strange, both definition are regular variants (with arity 0)
<octachron> Different arities should have a separate message (since ...4.10?)
<zozozo> ah.. the type isn't exposed
<zozozo> so it's variant vs opaque
<zozozo> hence the kind difference
<octachron> Hm, It sounds like a good idea to explicit the kinds here. It is not like it is a complicated information to remember for the compiler.
shawnw has quit [Ping timeout: 264 seconds]
<zozozo> I agree that it would be helpful
ransom has left #ocaml ["Textual IRC Client: www.textualapp.com"]
mxns has quit [Ping timeout: 260 seconds]
lizzin_ has joined #ocaml
<d_bot> <Lupus> most likely, yes, just tried thrift compiler, seems to produce OCaml code that should use that library, thanks for the pointer @Anurag 🙂
ygrek has quit [Remote host closed the connection]
Haudegen has quit [Quit: Bin weg.]
tane has joined #ocaml
hnOsmium0001 has joined #ocaml
ygrek has joined #ocaml
<d_bot> <Cyclomatic Complexity> Hi
<d_bot> <Cyclomatic Complexity> Is it still expected to get the `ocamllsp not found` error on OCaml Platform after reinstalling
<d_bot> <Cyclomatic Complexity> It works, I had to select the esy sandbox 🙂
mxns has joined #ocaml
Anarchos has joined #ocaml
<Anarchos> how to profile a project with dune ?
<zozozo> Anarchos: profile what ?
<zozozo> execution time, memory allocation, total memory used ?
lizzin_ has quit [Ping timeout: 258 seconds]
<Anarchos> zozozo execution time
<Anarchos> my verifier verifies a 500l demosntration in 3 minutes. i want to know where i loose time
<zozozo> there are a few methods: just "perf record" your binary and analyze it (you could also use --call-graph=dwarf but that might take a long time), you could use the landmarks libs (cf https://github.com/LexiFi/landmarks )
<d_bot> <Cyclomatic Complexity> ocamlplatform + bucklescript does not recognize `Js` in `Js.Date.make ()`, even though bucklescript compiles it fine. Am I missing something in the setup?
<zozozo> some projects implement their own notion of timers to profile various pieces of code (e.g. the compiler, most automated theorme provers, etc..)
<zozozo> (i.e. just place some calls to Sys.time at various points substract to get a time lapse, and add them for each iteration in this piece of code; although a bit manual, this enables you to profile the time taken by the code you want exactly, which cna sometimes be useful if you have an idefa where your program spends its time)
<Armael> starting with perf and landmarks is good advice, I think
<Armael> at least to get an idea of where you spend time
<companion_cube> landmarks is a good idea I thinj
<zozozo> I think so too, ^^
<zozozo> perf is relatively quick and easy to try
<zozozo> and last I used landmarks, it worked nicely
ygrek has quit [Remote host closed the connection]
ygrek has joined #ocaml
mrvn has quit [Ping timeout: 240 seconds]
mrvn has joined #ocaml
Haudegen has joined #ocaml
urek has joined #ocaml
urek__ has quit [Ping timeout: 272 seconds]
delysin has quit [Quit: WeeChat 3.0]
lizzin has joined #ocaml
lizzin is now known as Guest70041
<Anarchos> zozozo so how to perf record ?
delysin has joined #ocaml
<Anarchos> zozozo i use dune to build my project
amiloradovsky has joined #ocaml
Jesin has quit [Quit: Leaving]
<Anarchos> undu i am not on linux
urek__ has joined #ocaml
Jesin has joined #ocaml
<theblatte> Anarchos: then no perf for you :)
delysin has quit [Quit: WeeChat 3.0]
<d_bot> <undu> `perf` only works with the linux kernel 😦
<Anarchos> theblatte it seems :)
<Anarchos> theblatte but bytecode profiling should be sufficient enough for me
<companion_cube> use landmarks
<companion_cube> perfs on bytecode are kind of irrelevant anyway
<theblatte> yeah I wouldn't expect profiling bytecode to yield useful information wrt native perf
urek has quit [Ping timeout: 272 seconds]
<Anarchos> companion_cube you know how to activate it in a dune project ?
<companion_cube> like any other library
<companion_cube> I think there's a readme and stuff
<companion_cube> or even a ppx
<theblatte> profiling memory usage is also a good proxy for performance, and the new statistical memory profiler in ≥ 4.11 makes it very easy to do
<zozozo> Anarchos: for landmarks with dune: https://github.com/LexiFi/landmarks#usage-with-dune
<theblatte> "statmemprof"
delysin has joined #ocaml
urek has joined #ocaml
Guest70041 has quit [Ping timeout: 240 seconds]
berberman has quit [Ping timeout: 264 seconds]
berberman has joined #ocaml
urek__ has quit [Ping timeout: 272 seconds]
<Anarchos> zozozo now that i ran my program, where to find the statts produced by landmarks ?
<Armael> it's all explained in the readme
urek__ has joined #ocaml
<zozozo> yeah, just read the entire readme for landmakrs, that should give you all the info you need
<Anarchos> zozozo my process is a server one. I had to kill it with Ctrl+C , and saw no stats appearing
urek has quit [Ping timeout: 272 seconds]
<zozozo> Anarchos: have you read the landmarks readme ?
<Anarchos> zozozo i tried but didn't understand where the stats are stored
<zozozo> Anarchos: read this part : https://github.com/LexiFi/landmarks#the-ocaml_landmarks-environment-variable , what you want is the "When loading an instrumented program (at runtime):" part
<zozozo> you can control where the stats are dumped using the "ouput" value in the OCAML_LANDMARKS env variable when you run the program you want to profile
<Anarchos> The value `__generated_landmark_69c6663225c7135cdd4710215c9349c0_1' is required but not provided
<Anarchos> thanks dune !
<d_bot> <philzook> I'm calling an external program from ocaml and need to include the path to a configuration file that I have in a resources/ folder in the invocation. I don't necessarily know where my ocaml is going to be invoked from or where a user may place my project directory. Is there a nice way of doing this? I was considering maybe just including the config file as a string in my source and dumping it to a temp file every time.
Jesin has quit [Quit: Leaving]
Jesin has joined #ocaml
mxns has quit [Ping timeout: 258 seconds]
urek has joined #ocaml
urek__ has quit [Ping timeout: 272 seconds]
jnavila has joined #ocaml
<d_bot> <Cyclomatic Complexity> Bump: ocamlplatform + bucklescript does not recognize `Js` in `Js.Date.make ()`, even though bucklescript compiles it fine. Do you think I missed something obvious in the setup?
<d_bot> <Cyclomatic Complexity> (possibly @rgrinberg ?)
<d_bot> <rgrinberg> No idea. But you should switch to the bucklescript extension
TC01_ is now known as TC01
<d_bot> <Cyclomatic Complexity> I do so then, I thought ocamlplatform supported bucklescript because of the readme
<d_bot> <rgrinberg> We’ll drop support shortly. Just waiting for people to transition
kitties has joined #ocaml
mxns has joined #ocaml
steenuil_ has joined #ocaml
steenuil has quit [Ping timeout: 265 seconds]
mxns has quit [Ping timeout: 246 seconds]
wonko7 has quit [Ping timeout: 260 seconds]
mxns has joined #ocaml
lizzin has joined #ocaml
lizzin is now known as Guest44274
mxns has quit [Ping timeout: 246 seconds]
wonko7 has joined #ocaml
<d_bot> <Cyclomatic Complexity> I see, thanks 🙂
narimiran has quit [Ping timeout: 256 seconds]
Jesin has quit [Quit: Leaving]
oni-on-ion has quit [Read error: Connection reset by peer]
oni-on-ion has joined #ocaml
Jesin has joined #ocaml
<d_bot> <cemerick> Should I expect to see unused opens (33) highlighted using the OCaml Platform plugin? Other non-error warnings (e.g. 29) are being squigglied FWIW.
mxns has joined #ocaml
mxns has quit [Ping timeout: 260 seconds]
mxns has joined #ocaml
Anarchos has quit [Quit: Vision[0.10.3]: i've been blurred!]
urek has quit [Remote host closed the connection]
urek has joined #ocaml
amiloradovsky has quit [Ping timeout: 260 seconds]
nkatte has joined #ocaml
amiloradovsky has joined #ocaml
Guest44274 has quit [Ping timeout: 258 seconds]
Anarchos has joined #ocaml
lizzin has joined #ocaml
lizzin is now known as Guest61570
<d_bot> <rgrinberg> You should see them. All warnings are treated the same by the server.
Anarchos has quit [Ping timeout: 246 seconds]
jnavila has quit [Quit: Konversation terminated!]
mxns has quit [Ping timeout: 258 seconds]
mxns has joined #ocaml
Serpent7776 has quit [Quit: leaving]
Guest61570 has quit [Ping timeout: 246 seconds]
mxns_ has joined #ocaml
mxns has quit [Ping timeout: 272 seconds]
tane has quit [Quit: Leaving]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
lizzin has joined #ocaml
lizzin is now known as Guest1058
Anarchos has joined #ocaml
<Anarchos> does merlin makes vim really slow to start ?
amiloradovsky has quit [Ping timeout: 260 seconds]
amiloradovsky has joined #ocaml
vicfred has joined #ocaml
wonko7 has quit [Ping timeout: 260 seconds]
mxns_ has quit [Ping timeout: 256 seconds]