spew has quit [Quit: Connection closed for inactivity]
shinnya has quit [Ping timeout: 256 seconds]
VermillionAzure has quit [Ping timeout: 256 seconds]
VermillionAzure has joined #ocaml
sh0t has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
orbifx1 has quit [Ping timeout: 240 seconds]
FreeBirdLjj has quit [Ping timeout: 256 seconds]
mk9 has quit [Quit: mk9]
zolk3ri has quit [Remote host closed the connection]
VermillionAzure has quit [Ping timeout: 240 seconds]
VermillionAzure has joined #ocaml
xfbs has quit []
sh0t has joined #ocaml
jimt has quit [Quit: leaving]
cbot has quit [Ping timeout: 248 seconds]
ome has quit [Quit: Connection closed for inactivity]
sz0 has joined #ocaml
sh0t has quit [Remote host closed the connection]
savardjf has joined #ocaml
<savardjf>
Hello
savardjf has left #ocaml [#ocaml]
fpstudent has joined #ocaml
<fpstudent>
hey guys I'm having an hard time trying to understand an ocaml exercise I'm given in my fp intro course - is there anyone who would like to help by chance?
<pierpa>
maybe
Algebr has quit [Remote host closed the connection]
<fpstudent>
So basically, I'm trying to write a method which from a given tree will build a list of subtrees (tuples) where the first element is an index and the second is a matching Tree.
<fpstudent>
Tree have a structure like the following : type tree = It of int | Leaf of string | Tree of string * string * tree list
<pierpa>
what is the index? how do the indexes and the trees match?
<fpstudent>
I need to parse the entire tree (including the child list) and each time I encouter a tree with an height higher or equal than a given level, I need to replace this tree with a "It" tree, where the index is a sequence, and then I need to add the matching tree to the list of Tuples with the index
<fpstudent>
To determinate the height, I have already wrote down a method which we can assume works, so it's as simple as "height tree" to retrieve the height
<pierpa>
ugh
<fpstudent>
The index need to be generated sequentially by the method
ome has joined #ocaml
<pierpa>
you can't use your height function for this task
<fpstudent>
why not?
<pierpa>
because if you use your height function on every node then your algorithm will be quadratic
<pierpa>
you must do a single pass over the tree
jimt has joined #ocaml
<fpstudent>
I get your point - though we were initially told to build that function to use it in that other function so I believe the time complexity might be not in the scope of the exercise - but if you have better ideas I'm definitely willing to take them
<pierpa>
a nit: you must "visit" the entire tree, I guess, not parse.
<fpstudent>
right
<fpstudent>
so I believe I must start with a simple pattern matching like:
<pierpa>
can you write a function which visites every node, without doing anything else?
<fpstudent>
well yes, that would be something like:
<fpstudent>
let rec visittree tree -> match tree with | It i -> It i | Leaf l -> Leaf l | Tree(up, down, childs) -> map visittree childs
<pierpa>
ok
<pierpa>
and, it's equally easy to make this function build an exact copy of the tree, right?
<fpstudent>
let rec visittree tree -> match tree with | It i -> It i | Leaf l -> Leaf l | Tree(up, down, childs) -> Tree(up, down, map visittree childs)
<pierpa>
good!
<pierpa>
now, you can add a parameter which keeps track of the depth of nodes?
<fpstudent>
let rec visittree depth tree -> match tree with | It i -> It i | Leaf l -> Leaf l | Tree(up, down, childs) -> Tree(up, down, map (visittree depth + 1) childs)
<pierpa>
good
<pierpa>
then, instead of copying blindly the nodes, you must copy only when the depth is below a limit, right?
<pierpa>
and otherwise subst the node with a marker
<pierpa>
so, the only problem remaining is the incresing sequential number for labeling the merker?
<pierpa>
are you allowed to use references?
<pierpa>
if you can use references, just use one for keeping a counter
<fpstudent>
I believe I'm allowed
<fpstudent>
but just to backtrack a bit,
<pierpa>
if not, then, I'd do it in this way: instead of of map, I would use a separate function which threads in and out the counter
<fpstudent>
to your previous question, I would end up with this:
<fpstudent>
let rec visittree depth tree -> match tree with | It i -> It i | Leaf l -> Leaf l | Tree(up, down, childs) -> if (height tree >= depth) then Tree(up, down, map (visittree depth + 1) childs) else St someInt
<pierpa>
yes
<fpstudent>
But then two things become unclear to me : 1) how to keep a sequence for the "someInt"
mayhew has joined #ocaml
<fpstudent>
2) how to add the Tree to a list and in the end return the list of tuples
<pierpa>
let counter = ref 0 in <your function here with St !counter>
<pierpa>
ah, you want back a list, sorry, I forgot
<fpstudent>
np, so glad to get some help
<pierpa>
then repeat the exercise, write the function which visits the tree and returns a list of all the nodes... :)
<fpstudent>
but then the list wouldn't have the references?
<pierpa>
you dereference the counter and put the integer in the list
<pierpa>
St !counter
<fpstudent>
But I only add to the list when creating a St (when the depth match)
<pierpa>
maybe an even simpler solution: make all the It nodes It 0
<pierpa>
then at the end change the 0s to the increasing ints
<pierpa>
when you find a node which should converted to St n, you do: let new_node = St !counter; incr counter; new_node
<pierpa>
+be
<fpstudent>
So I would have something like this :
<fpstudent>
let visittree depth tree -> let counter = ref 0 in let rec visitrec match tree with | It i -> It i | Leaf l -> Leaf l | Tree(up, down, childs) -> if (height tree >= depth) then Tree(up, down, map (visittree depth + 1) childs) else let new_node = St !counter; incr counter; new_node
<fpstudent>
eew format
<pierpa>
ok
<fpstudent>
So far that would build a copy of the Tree, but with all St
<pierpa>
but since you want a list... hmmm
<fpstudent>
I would need to re-visit the entire tree, and for each St encountered, add a tuple (index, Tree)
<fpstudent>
ah but I don't have the trees anymore
<pierpa>
let me reread the question...
<fpstudent>
hmm so I would need to add to the list right after creating the St
<fpstudent>
Ok
<pierpa>
the It n nodes are numbered progressively, and must return a list containing ALL the nodes, both It and regular ones, numbered sequentially?
<fpstudent>
The list returned in the end will contains only nodes that have been replaced with Its, give me 2 min I'll write an example with data
<pierpa>
[(0, Tree(.....)); (1; Tree(....)); (2; It 0); ...] ?
cbot has joined #ocaml
<fpstudent>
Say let tree = Tree("something", "something", [it1, tree2] and let tree2 = Tree("something", "something", [it1])
<pierpa>
if you want only It nodes then the answer will be [It 0; It 1; It 2; ...] ?
<fpstudent>
The answer for my example would be [(1, Tree(... [It 1, It 2]]); Tree(... [It 1])]
<fpstudent>
oops, assume a 2 before the last Tree
<fpstudent>
so [(1, Tree(... [It 1, It 2]]); (2, Tree(... [It 1]))]
<fpstudent>
So when creating the It 2, I need to add a new entry to the list (2, replacedTree)
<pierpa>
yourfunc Tree("a", "b", [Leaf "c"]) ==> ? (assuming the given level is 1)
<fpstudent>
I believe that would be [(1, Tree("a", "b", [Leaf "c"])] since leaves have the lowest height
<pierpa>
then make the given level 0
krokodil7 has joined #ocaml
<fpstudent>
[(1, Tree("a", "b", [It 2]), (2, Leaf "c")] I guess - though I was given no example with leaves so I'm not 100% sure
<krokodil7>
Hi! I have a really newbie question here. I am compiling ocaml program (with jbuilder) but when I run it it just exists and I do not see my `main` functin being called
jimmyrcom has quit [Ping timeout: 256 seconds]
<krokodil7>
doing 'step' under 'ocamldebug' gives "index out of bound" exception but no backtrace
<pierpa>
ocaml will not call you main function for you. You must call it.
<pierpa>
ah, if it says index out of bounds then probably there's an index out of bounds.
<krokodil7>
pierpa: thanks! That's was it! changed to `let () =` and it is now called!
<pierpa>
fpstudent: why [It 2] ? you meant It 1 ?
<pierpa>
krokodil7: good
<fpstudent>
pierpa: yes - sorry
<pierpa>
ok
<fpstudent>
Also, say a node is used in both different sublists, then the Its created need to reference the same id
<pierpa>
I understood that the (It n) trees where
<pierpa>
cancel this
<pierpa>
hmmm
<fpstudent>
definitely the most challenging "intro" course I've had so far
<pierpa>
:)
noplamodo has quit [Ping timeout: 240 seconds]
<pierpa>
but there's no difficulty which is specific to ocaml or to fp in this problem, no?
<pierpa>
would be as difficult in any prog language
<fpstudent>
Well, say It was in Java, I would simply declare a Map at the beginning of my method which map index with the matching trees
jlouis has quit [Ping timeout: 268 seconds]
ahf has quit [Ping timeout: 268 seconds]
noplamodo has joined #ocaml
<fpstudent>
and but the list at the end, each access to the map would be O(1) anyway
<pierpa>
you can do the same in ocaml?
jlouis has joined #ocaml
ahf has joined #ocaml
<fpstudent>
hmm
<fpstudent>
the map would help me get rid of duplicates by relying on the map's backend which is hashset and overriden hashcode in the It's
<fpstudent>
i.e. Map<Tree, index> so each time I match a child, I check first if it is in the Map, if so I simply return St index, if not I create a new St, and add the old tree with the new index
<fpstudent>
overriden hashcode in the Tree's not It's - my bad
<fpstudent>
I could also simply build my list on the fly initializing an arraylist at the beginning, and adding the tuple each time I create a St
<pierpa>
hmmm
jimmyrcom has joined #ocaml
<fpstudent>
I was given an hint : fold_left
<pierpa>
hmm
<fpstudent>
but I think it's not needed with recursion
<pierpa>
is it an authoritative hint? (i.e. from the teacher? or from a colleadue student?)
<fpstudent>
from the teacher
<pierpa>
k
ygrek has quit [Ping timeout: 255 seconds]
tautologico has joined #ocaml
<fpstudent>
pierpa: are you still thinking or is this a desesperate case ? :)
<pierpa>
I took a break. I think I don't get the spec of the problem correctly
<fpstudent>
Oh okay.
<fpstudent>
Well thanks for your help so far!
<fpstudent>
That's almost 1h30 of your time
krokodil7 has quit [Quit: Page closed]
maattdd_ has joined #ocaml
<pierpa>
actually it's 4:30 here :)
maattdd_ has quit [Ping timeout: 276 seconds]
<pierpa>
no, wait! you mean it's 1:30 since we started!
<pierpa>
time flies
<fpstudent>
Yup, I was very impressionated with your patience
sz0 has quit [Quit: Connection closed for inactivity]
govg has joined #ocaml
Vermie has joined #ocaml
VermillionAzure has quit [Read error: Connection reset by peer]
pierpa has quit [Quit: Page closed]
eni has quit [Ping timeout: 240 seconds]
Vermie has quit [Ping timeout: 276 seconds]
ome has quit [Quit: Connection closed for inactivity]
mfp has quit [Ping timeout: 240 seconds]
mbuf has joined #ocaml
Vermie has joined #ocaml
Vermie has quit [Ping timeout: 276 seconds]
Vermie has joined #ocaml
spion has quit [Excess Flood]
spion has joined #ocaml
jao has quit [Ping timeout: 256 seconds]
Vermie has quit [Ping timeout: 276 seconds]
mbuf has left #ocaml ["Leaving"]
nopf has quit [Remote host closed the connection]
maattdd_ has joined #ocaml
MercurialAlchemi has joined #ocaml
maattdd_ has quit [Ping timeout: 240 seconds]
eni has joined #ocaml
eni is now known as Guest57695
Guest57695 has quit [Ping timeout: 240 seconds]
VermillionAzure has joined #ocaml
john51 has quit [Ping timeout: 240 seconds]
jnavila has joined #ocaml
AltGr has joined #ocaml
zpe has joined #ocaml
argent_smith has joined #ocaml
bartholin has quit [Ping timeout: 256 seconds]
mk9 has joined #ocaml
bartholin has joined #ocaml
bartholin has quit [Remote host closed the connection]
freyr has joined #ocaml
whoman has quit [Ping timeout: 264 seconds]
whoman has joined #ocaml
jimmyrcom has quit [Ping timeout: 256 seconds]
dhil has joined #ocaml
jimmyrcom has joined #ocaml
cbot has quit [Ping timeout: 248 seconds]
ia0 has quit [Quit: reboot]
ia0 has joined #ocaml
infinity0_ has joined #ocaml
infinity0 has quit [Ping timeout: 256 seconds]
infinity0_ has quit [Changing host]
infinity0_ has joined #ocaml
infinity0_ is now known as infinity0
mk9 has quit [Quit: mk9]
remix2000 has quit [Changing host]
remix2000 has joined #ocaml
mk9 has joined #ocaml
_whitelogger has joined #ocaml
mk9 has quit [Quit: mk9]
nullifidian has quit [Ping timeout: 256 seconds]
mk9 has joined #ocaml
maattdd_ has joined #ocaml
mk9 has quit [Quit: mk9]
mk9 has joined #ocaml
maattdd_ has quit [Ping timeout: 264 seconds]
jnavila has joined #ocaml
ziyourenxiang has joined #ocaml
mfp has joined #ocaml
kakadu has joined #ocaml
freyr has quit [Ping timeout: 256 seconds]
freyr has joined #ocaml
TarVanimelde has joined #ocaml
zmt01 has joined #ocaml
gentauro has quit [Ping timeout: 264 seconds]
zmt00 has quit [Ping timeout: 264 seconds]
gentauro has joined #ocaml
bbc- has joined #ocaml
Mercuria1Alchemi has joined #ocaml
hnrgrgr_ has joined #ocaml
vbmithr_ has joined #ocaml
bacam_ has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 264 seconds]
bbc has quit [Ping timeout: 264 seconds]
hnrgrgr has quit [Ping timeout: 264 seconds]
bacam has quit [Ping timeout: 264 seconds]
vbmithr has quit [Ping timeout: 264 seconds]
bacam_ is now known as bacam
zolk3ri has joined #ocaml
TarVanimelde has quit [Quit: TarVanimelde]
jnavila has quit [Ping timeout: 240 seconds]
zolk3ri_ has joined #ocaml
shinnya has joined #ocaml
zolk3ri has quit [Quit: Reconnecting]
VermillionAzure has quit [Ping timeout: 256 seconds]
justin2 has joined #ocaml
jerith_ has joined #ocaml
aegray has joined #ocaml
cow-orke1 has joined #ocaml
shinnya_ has joined #ocaml
lobo_ has joined #ocaml
Faster-Fanboi_ has joined #ocaml
justin_smith has quit [Ping timeout: 264 seconds]
companion_cube has quit [Ping timeout: 264 seconds]
jerith has quit [Ping timeout: 264 seconds]
shinnya has quit [Ping timeout: 264 seconds]
aegray_ has quit [Ping timeout: 264 seconds]
rixed has quit [Ping timeout: 264 seconds]
micro has quit [Ping timeout: 264 seconds]
Faster-Fanboi has quit [Ping timeout: 264 seconds]
cow-orker has quit [Ping timeout: 264 seconds]
lobo has quit [Ping timeout: 264 seconds]
mk9 has quit [Remote host closed the connection]
mk9 has joined #ocaml
companion_cube has joined #ocaml
micro has joined #ocaml
rixed has joined #ocaml
maattdd_ has joined #ocaml
_andre has joined #ocaml
reynir has quit [Quit: WeeChat 2.0.1]
reynir has joined #ocaml
VermillionAzure has joined #ocaml
whoman has quit [Ping timeout: 256 seconds]
VermillionAzure has quit [Ping timeout: 252 seconds]
silver has joined #ocaml
jnavila has joined #ocaml
ontologiae has joined #ocaml
maattdd_ has quit [Ping timeout: 252 seconds]
rwmjones is now known as rwmjones|biab
maattdd_ has joined #ocaml
buyfn has joined #ocaml
dhil has quit [Ping timeout: 265 seconds]
Haudegen has quit [Read error: Connection reset by peer]
freyr has quit [Remote host closed the connection]
buyfn has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
shinnya_ has quit [Ping timeout: 240 seconds]
lynn has quit [Ping timeout: 255 seconds]
bigs has quit [Ping timeout: 255 seconds]
habnabit has quit [Ping timeout: 255 seconds]
Rome has quit [Ping timeout: 240 seconds]
Rome has joined #ocaml
bigs has joined #ocaml
lynn has joined #ocaml
cojy has quit [Ping timeout: 255 seconds]
Robdor has quit [Quit: Ping timeout (120 seconds)]
Robdor has joined #ocaml
cojy has joined #ocaml
_habnabit has joined #ocaml
tautologico has quit [Quit: Connection closed for inactivity]
gtrak has joined #ocaml
jbrown has quit [Ping timeout: 256 seconds]
rwmjones|biab is now known as rwmjones
zolk3ri_ is now known as zolk3ri
jbrown has joined #ocaml
jimmyrcom has quit [Ping timeout: 268 seconds]
spew has joined #ocaml
jao has joined #ocaml
dhil has joined #ocaml
buyfn has joined #ocaml
buyfn has quit [Client Quit]
Haudegen has joined #ocaml
l1x has quit [Ping timeout: 255 seconds]
sveit_ has quit [Ping timeout: 240 seconds]
l1x has joined #ocaml
sveit has joined #ocaml
rwmjones is now known as rwmjones|mtg
jimmyrcom has joined #ocaml
Denommus has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
keep_learning has quit [Ping timeout: 255 seconds]
<remix2000>
What are common cases where lack of polymorphism is a serious problem?
mk9_ has joined #ocaml
mk9 has quit [Ping timeout: 240 seconds]
mk9_ is now known as mk9
mk9 has quit [Quit: mk9]
gtrak has quit [Quit: Page closed]
dhil has quit [Ping timeout: 248 seconds]
asm89 has quit [Ping timeout: 248 seconds]
asm89 has joined #ocaml
whoman has joined #ocaml
<lyxia>
Writing C.
<remix2000>
So it isn't noticeable when I use ready-to-use C bindings, lyxia?
nicoo has quit [Remote host closed the connection]
<lyxia>
What I said doesn't imply anything about OCaml.
nicoo has joined #ocaml
<lyxia>
If there are bindings exposed as monomorphic functions that could have been polymorphic, and you need the polymorphism, that's another problem.
<lyxia>
Maybe you have a more specific situation in mind?
FreeBirdLjj has joined #ocaml
<remix2000>
People keep saying that things like "+." are awful. But the bigger problem is writing function doing the same thing for different types… Is it true in real world?
<remix2000>
lyxia, ↑
<Drup>
Ah, you are talking about lack of *ad-hoc* polymorphism
<Drup>
it comes up ocasionally. When it comes up, it's quite annoying. It can always being worked around by being very explicit.
<Drup>
When it comes up, it's usually because you are trying to write extremely generic/high-flying type spagetti.
remix2000 has left #ocaml ["Leaving"]
remix2000 has joined #ocaml
govg has quit [Ping timeout: 260 seconds]
FreeBirdLjj has quit [Ping timeout: 255 seconds]
<remix2000>
sorry, I'm used to ^W clearing last word. Apparently it's not true in HexChat. Have I missed something, Drup?
mk9 has joined #ocaml
sh0t has joined #ocaml
gentauro has quit [Ping timeout: 240 seconds]
jmiven has quit [Quit: co'o]
jmiven has joined #ocaml
gentauro has joined #ocaml
dhil has joined #ocaml
<reynir>
No
<reynir>
remix2000: ^
lobo_ is now known as lobo
mk9 has quit [Remote host closed the connection]
<mattcode>
hi, when using oasis should i check in the files it generates (Makefile, setup.ml...) into git, or just my _oasis file?
<companion_cube>
at least the _oasis
<companion_cube>
then you have a choice:
mk9 has joined #ocaml
<companion_cube>
- depend on oasis and just add setup.ml generated in dynamic mode (small file)
<companion_cube>
- generate everything and git add it, then no dep on oasis (but lots of generated code)
<mattcode>
that makes sense. thanks :)
mk9 has quit [Client Quit]
<orbifx[m]>
Is there a better way for Lwt threads to exchange "mutable" information amongst them instead of references?
<orbifx[m]>
Mvar is a candidate (pass around the changes)
mk9 has joined #ocaml
rwmjones|mtg is now known as rwmjones
<jpdeplaix>
mattcode: the thing is to just have the _oasis during dev and do a branch for each release where you add the generated files.
<jpdeplaix>
you can remove the branch as long as you keep the tag
<jpdeplaix>
(if you are using git of course)
<companion_cube>
I used oasis quite a lot, but nowadays I switched most projets to jbuilder/dune, fwiw
gtrak has joined #ocaml
nicoo has quit [Remote host closed the connection]
zpe has quit [Remote host closed the connection]
nicoo has joined #ocaml
Haudegen has quit [Remote host closed the connection]
<orbifx[m]>
Anyone aware of issues applying `compare` to two inet_addresses ?
<companion_cube>
compare is dangerous
<companion_cube>
but otherwise I don't know
<orbifx[m]>
companion_cube: any suggestions on avoiding compare?
al-damiri has joined #ocaml
<companion_cube>
hmm, it's in Unix, compare probably works
<companion_cube>
best way to know is to look at the C bindings though (custom block?)
<orbifx[m]>
alright
<orbifx[m]>
I did some tests by hand on utop
<orbifx[m]>
companion_cube: no bidirectional CCMap?
<companion_cube>
ugh
<companion_cube>
bidirectional maps are so annoying
<companion_cube>
(no, sorry)
<companion_cube>
although a CCMultiMap is not that far away
<orbifx[m]>
yeah I noticed that, made me look into CCMap hoping for one there too; I need unique keys
<companion_cube>
if it's bidirectional, that's hard to guaranteee
<orbifx[m]>
If not I will write a reversal function. Why are bidirectional maps annoying?
<companion_cube>
because they tend to become bidirectional multimaps ;)
<companion_cube>
a -> 1, b -> 1 gives you a reverse multimap already
bartholin has joined #ocaml
<orbifx[m]>
I see
<orbifx[m]>
So to not have a multimap, add needs to check both key and value for duplicity, which if fair
<orbifx[m]>
I mean reasonable complexity
Haudegen has joined #ocaml
<companion_cube>
yeah, sounds reasonable
<companion_cube>
but you have to fail on addition, which is a bit weird
<companion_cube>
(or erase 2 bindings)
<orbifx[m]>
Addition of element?
gtrak has quit [Quit: WeeChat 2.0.1]
gtrak has joined #ocaml
mk9 has quit [Ping timeout: 248 seconds]
ski has quit [Quit: Lost terminal]
dhil has quit [Ping timeout: 240 seconds]
gtrak has quit [Quit: WeeChat 2.0.1]
gtrak has joined #ocaml
<orbifx[m]>
companion_cube: would such a map be a nice addition in CC?
<companion_cube>
why not, in containers.data (because it's quite niche)
<companion_cube>
but it's not obvious how to design a good API
justin2 is now known as justin_smith
madroach has quit [Quit: leaving]
madroach has joined #ocaml
dedgrant has quit [Ping timeout: 256 seconds]
cbot has joined #ocaml
<orbifx[m]>
Will think about it.
kakadu has quit [Quit: Konversation terminated!]
nomicflux has joined #ocaml
dhil has joined #ocaml
slash^ has joined #ocaml
gtrak has quit [Quit: WeeChat 2.0.1]
gtrak has joined #ocaml
ontologiae has quit [Ping timeout: 252 seconds]
<copy`>
How do I configure opam2 to use aspcud? Specifying `solver: aspcud` in the config file doesn't work (specifying `--solver=aspcud` does work)
mk9 has joined #ocaml
<jpdeplaix>
copy`: why would you do that ?
jpdeplaix has quit [Quit: WeeChat 1.6]
<Drup>
copy`: I concur, why would you do that ? x)
jpdeplaix has joined #ocaml
nomicflux has quit [Quit: nomicflux]
ELLIOTTCABLE has quit [Remote host closed the connection]
<copy`>
Because the built-in solver wants to do downgrades without a reason
dedgrant has joined #ocaml
<copy`>
Am I missing something?
mk9 has quit [Ping timeout: 276 seconds]
sh0t has quit [Remote host closed the connection]
mk9 has joined #ocaml
mk9 has quit [Client Quit]
kakadu has joined #ocaml
mk9 has joined #ocaml
leah2 has quit [Ping timeout: 265 seconds]
dhil has quit [Ping timeout: 256 seconds]
leah2 has joined #ocaml
sh0t has joined #ocaml
nicoo has quit [Remote host closed the connection]
dhil has joined #ocaml
nicoo has joined #ocaml
andreas_ has joined #ocaml
maattdd_ has quit [Ping timeout: 256 seconds]
jack5638 has quit [Ping timeout: 248 seconds]
Jesin has joined #ocaml
mk9 has quit [Quit: mk9]
jack5638 has joined #ocaml
_andre has quit [Quit: leaving]
dhil has quit [Ping timeout: 264 seconds]
Jesin has quit [Quit: Leaving]
Jesin has joined #ocaml
tane has joined #ocaml
VermillionAzure has joined #ocaml
slash^ has quit [Quit: Leaving]
zpe has joined #ocaml
zpe has quit [Remote host closed the connection]
VermillionAzure 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? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset]