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
peterbb has quit [Quit: peterbb]
inkbottle has joined #ocaml
zebrag has quit [Ping timeout: 246 seconds]
Haudegen has quit [Ping timeout: 246 seconds]
vicfred has quit [Quit: Leaving]
<yomimono> I would like to announce that I have used menhir and ocamllex to make an compiler that successfully emits one (1) noop byte
<yomimono> hackerman.gif
amiloradovsky has quit [Ping timeout: 240 seconds]
<companion_cube> 🎉
yomimono_ has joined #ocaml
yomimono has quit [Ping timeout: 240 seconds]
laokz has joined #ocaml
djellemah has quit [Ping timeout: 260 seconds]
JSharp has quit [Ping timeout: 240 seconds]
JSharp has joined #ocaml
webshinra_ has joined #ocaml
webshinra has quit [Read error: Connection reset by peer]
robmyers has quit [Ping timeout: 240 seconds]
robmyers has joined #ocaml
cemerick_ has joined #ocaml
bitonic_ has joined #ocaml
nullcone has joined #ocaml
cemerick has quit [Ping timeout: 240 seconds]
bitonic has quit [Ping timeout: 240 seconds]
SrPx has quit [Ping timeout: 240 seconds]
alehander92 has quit [Ping timeout: 240 seconds]
cemerick_ is now known as cemerick
bitonic_ is now known as bitonic
banjiewen has quit [Ping timeout: 240 seconds]
banjiewen_ has joined #ocaml
alehander92_ has joined #ocaml
cqc has quit [Ping timeout: 240 seconds]
cqc_ has joined #ocaml
SrPx has joined #ocaml
waleee-cl has quit [Quit: Connection closed for inactivity]
aaaaaa has joined #ocaml
mxns has joined #ocaml
mxns has quit [Client Quit]
_whitelogger has joined #ocaml
laokz has quit [Ping timeout: 240 seconds]
mxns has joined #ocaml
mbuf has joined #ocaml
narimiran has joined #ocaml
<mxns> any emacs users have tips for finding the documentation for a function call under the cursor?
wingsorc has quit [Quit: Leaving]
<mxns> I can use caml-help but it doesn't seem to find the docs for opened packages
snowpanda has joined #ocaml
<d_bot> <copy> merlin has a MerlinDocument in vim, most likely a similar command exists for emacs
<mxns> hmmm
<mxns> I'll check on that
<mxns> thanks
<mxns> ok, I found that. unfortunately it still finds the wrong docs. I wonder if I need to use some kind of LSP
<d_bot> <copy> LSP is just a protocol, it'll probably report the same thing as the built-in merlin commands
<d_bot> <copy> (if you use an LSP that uses merlin as a backend, which is likely the only option)
snowpanda has quit [Quit: Leaving...]
<mxns> yep, you're right, it uses merlin
<mxns> is there a way to get the docs for a function in utop?
decentpenguin has quit [Read error: Connection reset by peer]
decentpenguin has joined #ocaml
mxns has quit [Quit: WeeChat 2.9]
mxns has joined #ocaml
mxns has quit [Quit: WeeChat 2.9]
mxns has joined #ocaml
mxns has quit [Client Quit]
mxns has joined #ocaml
Tuplanolla has joined #ocaml
mxns has quit [Quit: WeeChat 2.9]
<d_bot> <khady> I think there is a tool from ocp to do that
<d_bot> <khady> another solution is to use ocp-index
mxns has joined #ocaml
<d_bot> <holmdunc> Looks like the utop integration (`ocp-index-top`) is bitrotted, which is a shame
mxns has quit [Quit: ZNC 1.8.2 - https://znc.in]
mxns has joined #ocaml
laokz has joined #ocaml
osa1 has joined #ocaml
jnavila has joined #ocaml
mxns has quit [Ping timeout: 256 seconds]
hnOsmium0001 has quit [Quit: Connection closed for inactivity]
mxns has joined #ocaml
mxns has quit [Ping timeout: 246 seconds]
stux|RC has quit [Quit: Aloha!]
stux|RC has joined #ocaml
<d_bot> <khady> is it just old or does it not work?
Haudegen has joined #ocaml
<d_bot> <craigfe> re. earlier discussion of `drop`, @kit-ty-kate has made a PR adding `List.{take,drop}` etc. to the stdlib (https://github.com/ocaml/ocaml/pull/9968) 🎉 (Lets hope it is merged...)
<d_bot> <holmdunc> @khady It won't install with 4.10 or 4.11, but with 4.09 and in `utop-full` it does work
laokz has quit [Ping timeout: 260 seconds]
narimiran has quit [Ping timeout: 256 seconds]
nullcone has quit [Quit: Connection closed for inactivity]
laokz has joined #ocaml
djellemah has joined #ocaml
bartholin has joined #ocaml
<d_bot> <dj charlie> with markup.ml, real quick, does anyone know how to preserve capitalisation when you do the pretty print example? 🙂
<d_bot> <dj charlie> if you don't know off the top of your head don't bother answering cause i haven't done any research period
jnavila has quit [Quit: Konversation terminated!]
jnavila has joined #ocaml
<dmbaturin_> d_bot: Capitalization of HTML tags?
<dmbaturin_> ...that feeling when you discover that Arg has a global state (Arg.current).
mxns has joined #ocaml
mxns has quit [Ping timeout: 264 seconds]
elfring has joined #ocaml
elfring has quit [Client Quit]
alehander92_ has quit [Quit: Connection closed for inactivity]
bartholin has quit [Ping timeout: 256 seconds]
mxns has joined #ocaml
bartholin has joined #ocaml
mxns has quit [Ping timeout: 240 seconds]
mxns has joined #ocaml
mxns has quit [Quit: ZNC 1.8.2 - https://znc.in]
djellemah has quit [Ping timeout: 240 seconds]
aecepoglu[m] has quit [*.net *.split]
aecepoglu[m] has joined #ocaml
dash has quit [*.net *.split]
lnxw37d4 has quit [*.net *.split]
conjunctive has quit [*.net *.split]
mgsk has quit [*.net *.split]
artart78 has quit [*.net *.split]
angerman has quit [*.net *.split]
conjunctive has joined #ocaml
mgsk has joined #ocaml
lnxw37d4 has joined #ocaml
dash has joined #ocaml
artart78 has joined #ocaml
angerman has joined #ocaml
waleee-cl has joined #ocaml
dash has quit [Ping timeout: 244 seconds]
lnxw37d4 has quit [Ping timeout: 244 seconds]
aecepoglu[m] has quit [Ping timeout: 244 seconds]
dash has joined #ocaml
aecepoglu[m] has joined #ocaml
lnxw37d4 has joined #ocaml
aaaaaa has quit [Ping timeout: 240 seconds]
mxns has joined #ocaml
mxns has quit [Ping timeout: 246 seconds]
narimiran has joined #ocaml
laokz has quit [Quit: Leaving]
caente has joined #ocaml
<d_bot> <mseri> I am trying static compilation with musl in ocaml. Does any of you have experience with it? At first I had issues with gmp, it seems that they are over, but now I get a dlopen failure (used to be just a warning with older versions of the compiler, not this package though): https://pastebin.com/gwqbSLDA
<d_bot> <mseri> Here is the build job if you are curious: https://github.com/mseri/doi2bib/runs/1236177617?check_suite_focus=true
bartholin has quit [Ping timeout: 258 seconds]
aaaaaa has joined #ocaml
mbuf has quit [Quit: Leaving]
bartholin has joined #ocaml
<d_bot> <qubit1> Is multicore OCaml going to be a separate compiler or is it going to be integrated into the current OCaml compiler somehow?
rig0rmortis has joined #ocaml
<d_bot> <mseri> Integrated. There are lots of internal refactoring going on in the mainland compiler for this to happen
rig0rmortis has quit [Quit: beep boop]
rgrmrts has joined #ocaml
aaaaaa has quit [Ping timeout: 272 seconds]
tane has joined #ocaml
<d_bot> <qubit1> This is super nice! I hope that a jit compiled toplevel will be also integrated into the current toolchain at some point.
mxns has joined #ocaml
mxns has quit [Ping timeout: 258 seconds]
<d_bot> <undu> @craigfe it's so weird to have to advocate for take and drop functions. They're useful when they are integrated
<d_bot> <holmdunc> @qubit1 I read that the multicore stuff being finished and merged is what will warrant OCaml 5.0
mxns has joined #ocaml
<d_bot> <qubit1> @holmdunc ok, I see, thanks.
mxns has quit [Ping timeout: 240 seconds]
bartholin has quit [Read error: Connection reset by peer]
<d_bot> <qubit1> Once the multicore and native toplevel will be finished I most likely will switch completely to OCaml for all my machine learning/data science tasks.
mxns has joined #ocaml
wingsorc has joined #ocaml
hnOsmium0001 has joined #ocaml
bartholin has joined #ocaml
amiloradovsky has joined #ocaml
<d_bot> <stab> Anybody familiar with using BAP graphlib for fixpoint computations?
<d_bot> <stab> In a solution they seem to associate each node with a solution. Traditionally you assocaite a solution with an edge not a node. This allows conditional jumps for instance to alter the value inheritted by children depending on if the succesor is the true jump or false jump. Essentially trying to figure out how to encode in an interval analysis something like this: where we have a jump where x<2, one of the sucessors should see like x
<d_bot> <stab> doesnt seem possible since merging is handled by the fixpoint engine and solutions are associated with nodes and not edges
<d_bot> <stab> Like really gross solution i guess is to create like fake nodes in between branches and there successors that represent the true and false condition but that would be really hacky and obnixous
mxns has quit [Ping timeout: 240 seconds]
mxns has joined #ocaml
mxns has quit [Ping timeout: 256 seconds]
bartholin has quit [Ping timeout: 256 seconds]
mxns has joined #ocaml
osa1 has quit [Ping timeout: 240 seconds]
webshinra_ has quit [Remote host closed the connection]
bartholin has joined #ocaml
mxns has quit [Ping timeout: 272 seconds]
webshinra has joined #ocaml
Hrundi_V_Bakshi has joined #ocaml
narimiran has quit [Ping timeout: 258 seconds]
bartholin has quit [Ping timeout: 258 seconds]
<companion_cube> have you looked at the `fix` library?
nullcone has joined #ocaml
amiloradovsky has quit [Remote host closed the connection]
amiloradovsky has joined #ocaml
ransom has joined #ocaml
mxns has joined #ocaml
<d_bot> <stab> Is that the one that uses hyper graphs?
<d_bot> <stab> Nah ok this one is different, I’ll look at it... I’d really love to use BAPs graph lib since it’s super simple but like associating solutions to nodes i painful
<d_bot> <stab> Not sure if this will work well with narrowing and widening etc
<d_bot> <stab> The problem I had with my initial implementation using Ocamlgraphs fix point module is they have no support for stuff that isn’t guarenteed to reach a fix point
<d_bot> <stab> Ie. Narrowing
mxns has quit [Ping timeout: 246 seconds]
<d_bot> <stab> potentially might be able to use it to do what i want idk
<d_bot> <stab> Well idk i could use it to get an initial lfp and also do my gfp stuff... granted the gfp would be a bit of a hack, I could just reverse the graph and then replace join by meet lol
jnavila has quit [Quit: Konversation terminated!]
yomimono_ has quit [Ping timeout: 256 seconds]
tane has quit [Quit: Leaving]
andreas303 has quit [Ping timeout: 240 seconds]
andreas303 has joined #ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 256 seconds]
vicfred has joined #ocaml
djellemah has joined #ocaml
<d_bot> <stab> Graphlib by far is the easiest to do the type of widening and narrowing i want minus the fact that solutions are associated with nodes
<d_bot> <stab> I think maybe i could use graphlib with the directed line graph
peterbb has joined #ocaml
peterbb has quit [Read error: Connection reset by peer]
zebrag has joined #ocaml
peterbb has joined #ocaml
inkbottle has quit [Ping timeout: 260 seconds]
peterbb_ has joined #ocaml
peterbb has quit [Ping timeout: 246 seconds]
peterbb_ is now known as peterbb
peterbb has quit [Client Quit]
peterbb has joined #ocaml
peterbb has quit [Remote host closed the connection]
yomimono has joined #ocaml
Hrundi_V_Bakshi has quit [Ping timeout: 265 seconds]
<companion_cube> for such specialized algorithms, it might be simpler to roll your own?
<d_bot> <Drup> Yeah, I would just copy/paste ocamlgraph's code and adapt it
rgrmrts has quit [Quit: beep boop]
Haudegen has quit [Ping timeout: 272 seconds]
djellemah has quit [Ping timeout: 240 seconds]
<companion_cube> what's a fixpoint on a graph, btw
<d_bot> <stab> I think I can use the directed line graph of my original graph to essentially transform edges to nodes and then use graphlib and since the nodes will now have edge info my transfer function can access that
<companion_cube> ?
<d_bot> <stab> Well so it’s not a fixpoint on a graph in particular, it’s a recursive function defined by a graph, in this case a control flow graph
<d_bot> <stab> Under fixpoint has a decent explanation
<d_bot> <stab> I think there is an error in it with some of the theory that I’m discussing in the Gitter
<d_bot> <stab> But mostly a good explanation
mxns has joined #ocaml
<companion_cube> a lot of text there, thanks
mxns has quit [Ping timeout: 256 seconds]
<d_bot> <stab> Yeah it’s a pretty deep concept I don’t think I could do it justice tbh lol
<d_bot> <stab> I’m pretty new to Abstract interpretation etc, maybe a year of work or so
<companion_cube> oh, ok. that kind of stuff
<companion_cube> seems like `fixpoint` is a bit too generic a name for this
Tuplanolla has quit [Quit: Leaving.]
andreas303 has quit [Remote host closed the connection]
andreas303 has joined #ocaml
jbrown has quit [Quit: Leaving]
snowpanda has joined #ocaml
<d_bot> <stab> Well so their is a proof of generality where any system of equations can be modeled as a graph
<d_bot> <stab> Well a subset, it’s a dynamic systems thing which is a bit outside of my familiarity tho
<d_bot> <stab> The fixpoint module you sent me earlier has a module that treats the system as just a system of equations if you want to do that type of thing
<d_bot> <stab> Obviously you can encode nodes and edges into that
amiloradovsky has quit [Ping timeout: 240 seconds]