adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 4.00.1 http://bit.ly/UHeZyT | http://www.ocaml-lang.org | Public logs at http://tunes.org/~nef/logs/ocaml/
andreypopp has quit [Quit: sleep]
lolcathost has quit [Ping timeout: 276 seconds]
ulfdoz_ has joined #ocaml
ulfdoz has quit [Read error: Operation timed out]
ulfdoz_ is now known as ulfdoz
pkrnj has joined #ocaml
gustav__ has joined #ocaml
andreypopp has joined #ocaml
BiDOrD has joined #ocaml
BiDOrD_ has quit [Ping timeout: 255 seconds]
andreypopp has quit [Quit: sleep]
Skolem has joined #ocaml
sepp2k1 has quit [Remote host closed the connection]
walter|r has quit [Read error: Connection reset by peer]
walter has quit [Read error: Connection reset by peer]
walter has joined #ocaml
walter|r has joined #ocaml
madroach has quit [Ping timeout: 244 seconds]
madroach has joined #ocaml
lolcathost has joined #ocaml
deu5 has quit [Quit: Leaving]
emmanuelux has quit [Quit: emmanuelux]
everyonemines has joined #ocaml
Yoric has joined #ocaml
tautologico has quit [Quit: tautologico]
astertronistic has joined #ocaml
leoncamel has joined #ocaml
Yoric has quit [Ping timeout: 252 seconds]
tac has joined #ocaml
lolcathost has quit [Ping timeout: 240 seconds]
lolcathost has joined #ocaml
justdit has joined #ocaml
tac has quit [Quit: Page closed]
<Skolem> Why is this a syntax error? let k = 7 in let _ = print_endline "1";;
<_habnabit> Skolem, every 'let' needs an 'in'
<_habnabit> Skolem, you can just do let k = 7 in print_endline "1";;
paolooo has joined #ocaml
<Skolem> habit: Thank you for the answer, but I don't understand yet how every "let" requires an "in". If that were the case, I would expect this to be a syntax error, yet it works fine: let _ = print_endline "1";; What am I missing?
paolooo has quit [Client Quit]
<_habnabit> Skolem, '_habnabit'. you can tab-complete my nickname if it helps.
<Skolem> _habnabit: thanks, the tab completion works great.
paolooo has joined #ocaml
paolooo has quit [Client Quit]
<_habnabit> Skolem, anyway you can only do that with statements that are at the top level of a module. that's how you define the values that a module exports.
<Skolem> Gotcha. Since I'm not trying to do any module exports, I'll just try to remember what you said about every "let" requiring an "in".
walter|r has quit [Read error: Connection reset by peer]
<_habnabit> Skolem, sorry, it's actually been a while since i did much ocaml dev. it's not just for that; you can't just have arbitrary expressions in a module. i don't remember _all_ of the statements that are allowed at the module scope, but you can't (for example) just call a function
<_habnabit> Skolem, so you have to do e.g. let () = prent_endline "1"
<_habnabit> print, even
walter|r has joined #ocaml
<Skolem> Thanks. I don't even know what module scope is. I just want to define some functions and call them, and I'm clinging to your rule of thumb about let/in like a life preserver. So far it's working. ;)
<_habnabit> Skolem, 'module scope' is just what you write in a .ml file
<Skolem> Ah. I googled for ["module scope" ocaml] and didn't see anything that looked canonical.
<_habnabit> i don't know if there's a more official term for it
<Skolem> Basically I don't plan to use modules yet. I just want to define a bunch of functions and then call the main one at the end.
<pippijn> you can call a function at top level
<pippijn> print_endline "Hello";;
<pippijn> works fine
<Skolem> pippijn: Thank you, _habnabit also explained that to me earlier… (_habnabit: Skolem, you can just do let k = 7 in print_endline "1";;)
<pippijn> no
<pippijn> let k = 7;; print_endline "1";;
<pippijn> this is allowed
<pippijn> 07:08 < _habnabit> Skolem, so you have to do e.g. let () = prent_endline "1"
<pippijn> this is incorrect
<_habnabit> can you do that without ;; though
<pippijn> _habnabit: please don't misinform people
<pippijn> _habnabit: yes, if it's the last expression in the module
<Skolem> Ah, you don't need the let at all. I see.
<_habnabit> really??
<_habnabit> let's see
<pippijn> try it and see
<pippijn> Skolem: it is not common practice to have toplevel expressions
<_habnabit> welp okay you can
<_habnabit> weird
<pippijn> but for example in ocamlbuild, it's common
<Skolem> pippijn: Is it more common to define a function and call it last as in the example here? http://caml.inria.fr/pub/docs/manual-ocaml/manual003.html#toc12
<pippijn> yes
<Skolem> Ok
<_habnabit> anyway, pippijn, please don't be condescending
<_habnabit> (not claiming to be an ocaml expert)
<pippijn> I don't expect you to be an expert
<pippijn> I expect you to have verified your claims
<_habnabit> well, yes, i did. i just hadn't _falsified_ them
<pippijn> no
<pippijn> you had not verified the claim "you can't (for example) just call a function"
<pippijn> that's easy to verify and you didn't do it
<_habnabit> http://codepad.org/bX3DrC8n huh??? it looks like i can't just call a function
<_habnabit> oh
<pippijn> 07:15 < pippijn> _habnabit: yes, if it's the last expression in the module
<_habnabit> forgot a semicolon whoops
<_habnabit> pippijn, yes, that's what i mean--i didn't know that
<pippijn> that's ok
<pippijn> you don't need to know everything
<pippijn> but then you shouldn't spread misinformation as facts
<_habnabit> sigh
<pippijn> anyway
<pippijn> you learnt something today :)
<pippijn> so next time you can teach someone better
madroach has quit [Quit: leaving]
<pippijn> Skolem: actually I prefer to say: let main () = ... let () = main ()
<pippijn> Skolem: because just main () doesn't check whether main returns unit
<Skolem> pippijn: Thanks. I'm getting a syntax error I don't understand with that. Here's my code (all one one line): let show f = print_endline f in let main () = show "foo" let () = main ()
madroach has joined #ocaml
<pippijn> ah
<pippijn> toplevel let is actually a very different construct than local let
<pippijn> local let is an expression of the form "let binding in expr"
<pippijn> binding is "a = b"
<pippijn> and expr is mandatory
<pippijn> toplevel bindings are of the form "let binding" without "in"
<pippijn> as soon as you add "in", it becomes an expression
<pippijn> so it behaves like print_endline "hello"
<pippijn> you are writing this:
<pippijn> let show f =
<pippijn> print_endline f
<pippijn> in
<pippijn> let main () = show "foo"
<pippijn> [and here, we expect "in"]
<pippijn> you want to write this, instead:
<_habnabit> http://codepad.org/ecpdz9TV so why is this a syntax error
<pippijn> let show f = print_endline f (with optional ;;)
<pippijn> let main () = show "foo"
<pippijn> let () = main ()
<pippijn> _habnabit: because it's the same as: let bar = "bar" print_endline bar
<pippijn> you need a ;; here
<Skolem> pippijn: Thanks, that definitely works. I think I'm confused about when to use 'let' and when to use ';;'. is there some simple rule of thumb I can follow that will get me through the kind of simple code I'm trying to write?
<_habnabit> gross
<pippijn> ;; terminates a sentence
<_habnabit> so it seems it's more like "you can call a function if it's the only expression in a module" and not "the last expression"
<pippijn> _habnabit: if you insist on not adding ;; after that expression, yes
<_habnabit> adding ;;s seems silly
<pippijn> _habnabit: but you can write print_endline "hello";; print_endline "world";; Printf.printf "this is a number: %d\n" 300;;
<pippijn> adding ;; is sometimes useful
<pippijn> especially in imperative code
<pippijn> because you get funny syntax errors if you do this:
<pippijn> let func () = expr; expr; expr;
<pippijn> let main () = func ()
<pippijn> you will get a syntax error after the definition of main
<pippijn> because the trailing ";" causes "let main () = func ()" to be the start of a let-in expression
<pippijn> you can also do
<pippijn> let func () = begin expr; expr; expr; end
<pippijn> or
<pippijn> let func () = (expr; expr; expr;)
<pippijn> or like I said
<pippijn> let func () = expr; expr; expr; ;;
<pippijn> up to you, really, it's a style question
mye has joined #ocaml
<everyonemines> I thought if you're doing "let () =" then you should end every function with "in"
<everyonemines> let fn _ = exp; exp; exp; in let main _ = fn ()
<everyonemines> personally I use ;; though because I don't like "let func ()"
<Skolem> everyonemines: that can't be right, because this ends every function with "in", but gives a syntax error: let show f = print_endline f in let main () = show "foo" in let () = main ()
<everyonemines> hmm
<everyonemines> yeah, I guess that doesn't work
<everyonemines> I guess I should stick to ;; :-)
<Skolem> That was my take-away.
<everyonemines> you would actually need to write that as "let main _ = let show f = print_endline f in show "foo" "
<everyonemines> so you can do it, but it might get confusing
justdit has quit [Ping timeout: 252 seconds]
<everyonemines> the annoying thing is when you need to move imperative code using ;; to inside a function
<everyonemines> Skolem: let () = let show f = print_endline f in show "foo" in ()
<everyonemines> there you go
<everyonemines> actually, let () = let show f = print_endline f in let () = show "foo" in ()
<everyonemines> obviously superior
<everyonemines> because it's more functional
<Skolem> wow.
<Skolem> It assigns () to (), that's for sure.
<Skolem> well,doesn't "assign" but ....
<everyonemines> hey i remember you skolem
<everyonemines> we chatted before
<Skolem> Yes :)
<everyonemines> what are you up to now?
<Skolem> Nice to see you again.
<Skolem> Just now, I was testing the performance of js_of_ocaml against "native" javascript for a tight loop of arithmetic operations.
<everyonemines> we could totally collaborate on some amazing ocaml program
<Skolem> It's very kind of you to say so, but I doubt I'd have much to offer on my end of the collaboration. Whatever it is, you should do it, though!
<everyonemines> If you could offer some lack of procrastination, that would be helpful.
Yoric has joined #ocaml
<Skolem> Procrastination is my specialty. I can only admire those who lack it.
<everyonemines> I tend to get pretty lazy after I'm done designing something.
<everyonemines> Partly fear of failure I guess. #firstworldproblems
pango is now known as pangoafk
lolcathost has quit [Quit: leaving]
lolcathost has joined #ocaml
larhat has quit [Quit: Leaving.]
mye has quit [Quit: mye]
paolooo has joined #ocaml
paolooo has quit [Client Quit]
hkBst has joined #ocaml
hkBst has quit [Changing host]
hkBst has joined #ocaml
pkrnj has quit [Quit: Textual IRC Client: www.textualapp.com]
Neros has quit [Read error: Operation timed out]
<pippijn> oh, omake uses inotify
ftrvxmtrx has quit [Quit: Leaving]
everyonemines has quit [Quit: Leaving.]
answer_42 has joined #ocaml
chambart has joined #ocaml
Cyanure has joined #ocaml
mye has joined #ocaml
ftrvxmtrx has joined #ocaml
paolooo has joined #ocaml
justdit has joined #ocaml
Cyanure has quit [Remote host closed the connection]
justdit has quit [Client Quit]
justdit has joined #ocaml
Yoric has quit [Ping timeout: 252 seconds]
thomasga has joined #ocaml
larhat has joined #ocaml
csag8264 has joined #ocaml
andreypopp has joined #ocaml
Cyanure has joined #ocaml
mye has quit [Quit: mye]
ontologiae has joined #ocaml
lolcathost has quit [Read error: Operation timed out]
andreypopp has quit [Quit: sleep]
andreypopp has joined #ocaml
djcoin has joined #ocaml
lolcathost has joined #ocaml
chambart has quit [Ping timeout: 246 seconds]
andreypopp has quit [Quit: sleep]
Kakadu has joined #ocaml
paolooo has quit [Quit: Page closed]
paolooo has joined #ocaml
eikke has joined #ocaml
cdidd has quit [Remote host closed the connection]
mye has joined #ocaml
paolooo has quit [Quit: Page closed]
paolooo has joined #ocaml
fraggle_ has quit [Ping timeout: 260 seconds]
Yoric has joined #ocaml
fraggle_ has joined #ocaml
elixey has quit [Ping timeout: 276 seconds]
elixey has joined #ocaml
sepp2k has joined #ocaml
Yoric has quit [*.net *.split]
gnuvince has quit [*.net *.split]
ccasin has quit [*.net *.split]
maufred has quit [*.net *.split]
Haseo has quit [*.net *.split]
hto has quit [*.net *.split]
paolooo has quit [*.net *.split]
lolcathost has quit [*.net *.split]
mjonsson has quit [*.net *.split]
orbitz has quit [*.net *.split]
rixed has quit [*.net *.split]
larhat has quit [*.net *.split]
NaCl has quit [*.net *.split]
nimred has quit [*.net *.split]
Obfuscate has quit [*.net *.split]
bacam has quit [*.net *.split]
wieczyk has quit [*.net *.split]
lolcathost has joined #ocaml
Yoric has joined #ocaml
paolooo has joined #ocaml
larhat has joined #ocaml
mjonsson has joined #ocaml
hto has joined #ocaml
Haseo has joined #ocaml
maufred has joined #ocaml
ccasin has joined #ocaml
gnuvince has joined #ocaml
orbitz has joined #ocaml
rixed has joined #ocaml
NaCl has joined #ocaml
nimred has joined #ocaml
Obfuscate has joined #ocaml
bacam has joined #ocaml
wieczyk has joined #ocaml
gustav__ has quit [Excess Flood]
lolcathost is now known as Guest11940
Guest11940 is now known as Playground
Playground has quit [Changing host]
Playground has joined #ocaml
gustav__ has joined #ocaml
Playground is now known as lolcathost
csag8264 has quit [*.net *.split]
astertronistic has quit [*.net *.split]
tlockney has quit [*.net *.split]
ski has quit [*.net *.split]
noj has quit [*.net *.split]
Yoric has quit [*.net *.split]
gnuvince has quit [*.net *.split]
ccasin has quit [*.net *.split]
maufred has quit [*.net *.split]
Haseo has quit [*.net *.split]
hto has quit [*.net *.split]
paolooo has quit [*.net *.split]
mjonsson has quit [*.net *.split]
orbitz has quit [*.net *.split]
rixed has quit [*.net *.split]
larhat has quit [*.net *.split]
NaCl has quit [*.net *.split]
nimred has quit [*.net *.split]
Obfuscate has quit [*.net *.split]
bacam has quit [*.net *.split]
wieczyk has quit [*.net *.split]
sepp2k has quit [*.net *.split]
walter has quit [*.net *.split]
shajen has quit [*.net *.split]
bobry has quit [*.net *.split]
yezariaely has quit [*.net *.split]
madroach has quit [*.net *.split]
emias has quit [*.net *.split]
flux has quit [*.net *.split]
othiym23 has quit [*.net *.split]
hyperboreean has quit [*.net *.split]
pangoafk has quit [*.net *.split]
f[x] has quit [*.net *.split]
pr has quit [*.net *.split]
olasd has quit [*.net *.split]
patronus_ has quit [*.net *.split]
zzz_` has quit [*.net *.split]
tizoc has quit [*.net *.split]
willb has quit [*.net *.split]
BiDOrD has quit [*.net *.split]
snarkyboojum has quit [*.net *.split]
xaimus has quit [*.net *.split]
mfp has quit [*.net *.split]
srcerer has quit [*.net *.split]
milosn has quit [*.net *.split]
dsheets has quit [*.net *.split]
eikke has quit [*.net *.split]
rossberg has quit [*.net *.split]
ben_zen has quit [*.net *.split]
wagle has quit [*.net *.split]
rwmjones has quit [*.net *.split]
mk270 has quit [*.net *.split]
abeaulieu has quit [*.net *.split]
vpm has quit [*.net *.split]
fraggle_ has quit [*.net *.split]
jpdeplaix has quit [*.net *.split]
brendan has quit [*.net *.split]
ImAlsoGreg has quit [*.net *.split]
adrien has quit [*.net *.split]
diml has quit [*.net *.split]
thizanne has quit [*.net *.split]
thomasga has quit [*.net *.split]
hcarty has quit [*.net *.split]
mehdid has quit [*.net *.split]
ousado has quit [*.net *.split]
yroeht has quit [*.net *.split]
Asmadeus has quit [*.net *.split]
samposm has quit [*.net *.split]
_habnabit has quit [*.net *.split]
smerz has quit [*.net *.split]
svenl has quit [*.net *.split]
benja has quit [*.net *.split]
lolcathost has quit [*.net *.split]
ftrvxmtrx has quit [*.net *.split]
leoncamel has quit [*.net *.split]
ivan\ has quit [*.net *.split]
mathieui has quit [*.net *.split]
TaXules has quit [*.net *.split]
metasyntax has quit [*.net *.split]
pippijn has quit [*.net *.split]
jlouis has quit [*.net *.split]
pheredhel has quit [*.net *.split]
mal`` has quit [*.net *.split]
Cyanure has quit [*.net *.split]
ulfdoz has quit [*.net *.split]
testcocoon has quit [*.net *.split]
wormphlegm has quit [*.net *.split]
sivoais has quit [*.net *.split]
dwmw2_gone has quit [*.net *.split]
Enjolras has quit [*.net *.split]
Derander has quit [*.net *.split]
walter|r has quit [*.net *.split]
bitbckt has quit [*.net *.split]
deavid has quit [*.net *.split]
sgnb has quit [*.net *.split]
Pantoufle has quit [*.net *.split]
arsatiki has quit [*.net *.split]
Qrntz has quit [*.net *.split]
gustav__ has quit [*.net *.split]
justdit has quit [*.net *.split]
jbrown__ has quit [*.net *.split]
caligula has quit [*.net *.split]
fasta has quit [*.net *.split]
enkomax has quit [*.net *.split]
jonafan has quit [*.net *.split]
kba has quit [*.net *.split]
contempt has quit [Max SendQ exceeded]
contempt has joined #ocaml
gustav__ has joined #ocaml
mal`` has joined #ocaml
pheredhel has joined #ocaml
jonafan has joined #ocaml
jlouis has joined #ocaml
thizanne has joined #ocaml
Asmadeus has joined #ocaml
diml has joined #ocaml
kba has joined #ocaml
svenl has joined #ocaml
Qrntz has joined #ocaml
adrien has joined #ocaml
arsatiki has joined #ocaml
samposm has joined #ocaml
pippijn has joined #ocaml
patronus_ has joined #ocaml
noj has joined #ocaml
ski has joined #ocaml
Derander has joined #ocaml
vpm has joined #ocaml
olasd has joined #ocaml
tlockney has joined #ocaml
hyperboreean has joined #ocaml
abeaulieu has joined #ocaml
xaimus has joined #ocaml
willb has joined #ocaml
fasta has joined #ocaml
ImAlsoGreg has joined #ocaml
yroeht has joined #ocaml
smerz has joined #ocaml
pr has joined #ocaml
metasyntax has joined #ocaml
enkomax has joined #ocaml
dsheets has joined #ocaml
mk270 has joined #ocaml
othiym23 has joined #ocaml
dwmw2_gone has joined #ocaml
_habnabit has joined #ocaml
ousado has joined #ocaml
TaXules has joined #ocaml
flux has joined #ocaml
Pantoufle has joined #ocaml
rwmjones has joined #ocaml
brendan has joined #ocaml
jpdeplaix has joined #ocaml
benja has joined #ocaml
emias has joined #ocaml
snarkyboojum has joined #ocaml
wagle has joined #ocaml
f[x] has joined #ocaml
mehdid has joined #ocaml
tizoc has joined #ocaml
zzz_` has joined #ocaml
sgnb has joined #ocaml
milosn has joined #ocaml
deavid has joined #ocaml
bitbckt has joined #ocaml
caligula has joined #ocaml
sivoais has joined #ocaml
mathieui has joined #ocaml
hcarty has joined #ocaml
srcerer has joined #ocaml
Enjolras has joined #ocaml
ivan\ has joined #ocaml
pangoafk has joined #ocaml
ben_zen has joined #ocaml
wormphlegm has joined #ocaml
testcocoon has joined #ocaml
jbrown__ has joined #ocaml
mfp has joined #ocaml
rossberg has joined #ocaml
shajen has joined #ocaml
bobry has joined #ocaml
yezariaely has joined #ocaml
ulfdoz has joined #ocaml
BiDOrD has joined #ocaml
walter has joined #ocaml
astertronistic has joined #ocaml
leoncamel has joined #ocaml
walter|r has joined #ocaml
madroach has joined #ocaml
ftrvxmtrx has joined #ocaml
justdit has joined #ocaml
thomasga has joined #ocaml
csag8264 has joined #ocaml
Cyanure has joined #ocaml
eikke has joined #ocaml
fraggle_ has joined #ocaml
sepp2k has joined #ocaml
lolcathost has joined #ocaml
Yoric has joined #ocaml
paolooo has joined #ocaml
larhat has joined #ocaml
mjonsson has joined #ocaml
hto has joined #ocaml
Haseo has joined #ocaml
maufred has joined #ocaml
ccasin has joined #ocaml
gnuvince has joined #ocaml
orbitz has joined #ocaml
rixed has joined #ocaml
NaCl has joined #ocaml
nimred has joined #ocaml
Obfuscate has joined #ocaml
bacam has joined #ocaml
wieczyk has joined #ocaml
jave has quit [Max SendQ exceeded]
justdit has quit [Read error: Connection reset by peer]
mfp has quit [*.net *.split]
srcerer has quit [*.net *.split]
milosn has quit [*.net *.split]
dsheets has quit [*.net *.split]
mfp has joined #ocaml
srcerer has joined #ocaml
milosn has joined #ocaml
dsheets has joined #ocaml
justdit has joined #ocaml
mye has quit [*.net *.split]
djcoin has quit [*.net *.split]
Skolem has quit [*.net *.split]
The_third_man has quit [*.net *.split]
companion_cube has quit [*.net *.split]
vbmithr has quit [*.net *.split]
Kakadu has quit [*.net *.split]
hkBst has quit [*.net *.split]
thelema has quit [*.net *.split]
lopex has quit [*.net *.split]
mfp has quit [*.net *.split]
srcerer has quit [*.net *.split]
milosn has quit [*.net *.split]
dsheets has quit [*.net *.split]
sepp2k has quit [*.net *.split]
walter has quit [*.net *.split]
shajen has quit [*.net *.split]
bobry has quit [*.net *.split]
yezariaely has quit [*.net *.split]
madroach has quit [*.net *.split]
emias has quit [*.net *.split]
flux has quit [*.net *.split]
othiym23 has quit [*.net *.split]
hyperboreean has quit [*.net *.split]
pangoafk has quit [*.net *.split]
f[x] has quit [*.net *.split]
pr has quit [*.net *.split]
olasd has quit [*.net *.split]
patronus_ has quit [*.net *.split]
zzz_` has quit [*.net *.split]
tizoc has quit [*.net *.split]
willb has quit [*.net *.split]
BiDOrD has quit [*.net *.split]
snarkyboojum has quit [*.net *.split]
xaimus has quit [*.net *.split]
csag8264 has quit [*.net *.split]
astertronistic has quit [*.net *.split]
tlockney has quit [*.net *.split]
ski has quit [*.net *.split]
noj has quit [*.net *.split]
eikke has quit [*.net *.split]
rossberg has quit [*.net *.split]
ben_zen has quit [*.net *.split]
wagle has quit [*.net *.split]
rwmjones has quit [*.net *.split]
mk270 has quit [*.net *.split]
abeaulieu has quit [*.net *.split]
vpm has quit [*.net *.split]
fraggle_ has quit [*.net *.split]
jpdeplaix has quit [*.net *.split]
brendan has quit [*.net *.split]
ImAlsoGreg has quit [*.net *.split]
adrien has quit [*.net *.split]
diml has quit [*.net *.split]
thizanne has quit [*.net *.split]
justdit has quit [*.net *.split]
contempt has quit [*.net *.split]
thomasga has quit [*.net *.split]
hcarty has quit [*.net *.split]
mehdid has quit [*.net *.split]
ousado has quit [*.net *.split]
yroeht has quit [*.net *.split]
Asmadeus has quit [*.net *.split]
samposm has quit [*.net *.split]
_habnabit has quit [*.net *.split]
smerz has quit [*.net *.split]
svenl has quit [*.net *.split]
benja has quit [*.net *.split]
lolcathost has quit [*.net *.split]
ftrvxmtrx has quit [*.net *.split]
leoncamel has quit [*.net *.split]
ivan\ has quit [*.net *.split]
mathieui has quit [*.net *.split]
TaXules has quit [*.net *.split]
metasyntax has quit [*.net *.split]
pippijn has quit [*.net *.split]
jlouis has quit [*.net *.split]
pheredhel has quit [*.net *.split]
mal`` has quit [*.net *.split]
Cyanure has quit [*.net *.split]
ulfdoz has quit [*.net *.split]
testcocoon has quit [*.net *.split]
wormphlegm has quit [*.net *.split]
sivoais has quit [*.net *.split]
dwmw2_gone has quit [*.net *.split]
Enjolras has quit [*.net *.split]
Derander has quit [*.net *.split]
walter|r has quit [*.net *.split]
bitbckt has quit [*.net *.split]
deavid has quit [*.net *.split]
sgnb has quit [*.net *.split]
Pantoufle has quit [*.net *.split]
arsatiki has quit [*.net *.split]
Qrntz has quit [*.net *.split]
gustav__ has quit [*.net *.split]
jbrown__ has quit [*.net *.split]
caligula has quit [*.net *.split]
fasta has quit [*.net *.split]
enkomax has quit [*.net *.split]
jonafan has quit [*.net *.split]
kba has quit [*.net *.split]
Yoric has quit [*.net *.split]
gnuvince has quit [*.net *.split]
ccasin has quit [*.net *.split]
maufred has quit [*.net *.split]
Haseo has quit [*.net *.split]
hto has quit [*.net *.split]
paolooo has quit [*.net *.split]
mjonsson has quit [*.net *.split]
orbitz has quit [*.net *.split]
rixed has quit [*.net *.split]
larhat has quit [*.net *.split]
NaCl has quit [*.net *.split]
nimred has quit [*.net *.split]
Obfuscate has quit [*.net *.split]
bacam has quit [*.net *.split]
wieczyk has quit [*.net *.split]
justdit has joined #ocaml
dsheets has joined #ocaml
milosn has joined #ocaml
srcerer has joined #ocaml
mfp has joined #ocaml
lopex has joined #ocaml
thelema has joined #ocaml
hkBst has joined #ocaml
Kakadu has joined #ocaml
contempt has joined #ocaml
gustav__ has joined #ocaml
mal`` has joined #ocaml
pheredhel has joined #ocaml
jonafan has joined #ocaml
jlouis has joined #ocaml
thizanne has joined #ocaml
Asmadeus has joined #ocaml
diml has joined #ocaml
kba has joined #ocaml
svenl has joined #ocaml
Qrntz has joined #ocaml
adrien has joined #ocaml
arsatiki has joined #ocaml
samposm has joined #ocaml
pippijn has joined #ocaml
patronus_ has joined #ocaml
noj has joined #ocaml
ski has joined #ocaml
Derander has joined #ocaml
vpm has joined #ocaml
olasd has joined #ocaml
tlockney has joined #ocaml
hyperboreean has joined #ocaml
abeaulieu has joined #ocaml
xaimus has joined #ocaml
willb has joined #ocaml
fasta has joined #ocaml
ImAlsoGreg has joined #ocaml
yroeht has joined #ocaml
smerz has joined #ocaml
pr has joined #ocaml
metasyntax has joined #ocaml
enkomax has joined #ocaml
mk270 has joined #ocaml
othiym23 has joined #ocaml
dwmw2_gone has joined #ocaml
_habnabit has joined #ocaml
ousado has joined #ocaml
TaXules has joined #ocaml
flux has joined #ocaml
Pantoufle has joined #ocaml
rwmjones has joined #ocaml
brendan has joined #ocaml
jpdeplaix has joined #ocaml
benja has joined #ocaml
emias has joined #ocaml
snarkyboojum has joined #ocaml
wagle has joined #ocaml
f[x] has joined #ocaml
mehdid has joined #ocaml
tizoc has joined #ocaml
zzz_` has joined #ocaml
sgnb has joined #ocaml
deavid has joined #ocaml
bitbckt has joined #ocaml
caligula has joined #ocaml
sivoais has joined #ocaml
mathieui has joined #ocaml
hcarty has joined #ocaml
Enjolras has joined #ocaml
ivan\ has joined #ocaml
pangoafk has joined #ocaml
ben_zen has joined #ocaml
wormphlegm has joined #ocaml
testcocoon has joined #ocaml
jbrown__ has joined #ocaml
rossberg has joined #ocaml
shajen has joined #ocaml
bobry has joined #ocaml
yezariaely has joined #ocaml
ulfdoz has joined #ocaml
BiDOrD has joined #ocaml
walter has joined #ocaml
astertronistic has joined #ocaml
leoncamel has joined #ocaml
walter|r has joined #ocaml
madroach has joined #ocaml
ftrvxmtrx has joined #ocaml
thomasga has joined #ocaml
csag8264 has joined #ocaml
Cyanure has joined #ocaml
eikke has joined #ocaml
fraggle_ has joined #ocaml
sepp2k has joined #ocaml
lolcathost has joined #ocaml
Yoric has joined #ocaml
paolooo has joined #ocaml
larhat has joined #ocaml
mjonsson has joined #ocaml
hto has joined #ocaml
Haseo has joined #ocaml
maufred has joined #ocaml
ccasin has joined #ocaml
gnuvince has joined #ocaml
orbitz has joined #ocaml
rixed has joined #ocaml
NaCl has joined #ocaml
nimred has joined #ocaml
Obfuscate has joined #ocaml
bacam has joined #ocaml
wieczyk has joined #ocaml
mye has joined #ocaml
djcoin has joined #ocaml
Skolem has joined #ocaml
The_third_man has joined #ocaml
companion_cube has joined #ocaml
vbmithr has joined #ocaml
srcerer has quit [Ping timeout: 246 seconds]
chambart has joined #ocaml
elixey has quit [Max SendQ exceeded]
zzz_` has quit [*.net *.split]
tizoc has quit [*.net *.split]
willb has quit [*.net *.split]
zzz_` has joined #ocaml
tizoc has joined #ocaml
willb has joined #ocaml
BiDOrD has quit [*.net *.split]
snarkyboojum has quit [*.net *.split]
xaimus has quit [*.net *.split]
BiDOrD has joined #ocaml
snarkyboojum has joined #ocaml
xaimus has joined #ocaml
mye has quit [Quit: mye]
jave has joined #ocaml
Yoric has quit [Ping timeout: 252 seconds]
srcerer has joined #ocaml
caligula_ has joined #ocaml
caligula has quit [Ping timeout: 268 seconds]
Inst has joined #ocaml
chambart has quit [Ping timeout: 265 seconds]
lolcathost has quit [Quit: leaving]
lolcathost has joined #ocaml
avsm1 has joined #ocaml
avsm1 has quit [Client Quit]
avsm has joined #ocaml
csag8264 has quit [Ping timeout: 252 seconds]
Xizor has joined #ocaml
beckerb has joined #ocaml
lolcathost has quit [Quit: leaving]
Playground has joined #ocaml
Playground has quit [Quit: leaving]
lolcathost has joined #ocaml
notdan has joined #ocaml
fusillia has joined #ocaml
Inst has left #ocaml []
lolcathost has quit [Quit: leaving]
Yoric has joined #ocaml
mye has joined #ocaml
_andre has joined #ocaml
eikke has quit [Read error: Operation timed out]
eikke has joined #ocaml
chambart has joined #ocaml
eikke has quit [Ping timeout: 245 seconds]
ppseafield has joined #ocaml
iZsh has joined #ocaml
Haseo has quit [Ping timeout: 252 seconds]
Haseo has joined #ocaml
Xizor has quit [Quit: So yes it's mIRC under wine under debian double peche capital. ;) I'll soon see in kfreeBSD.]
justdit has quit [Ping timeout: 256 seconds]
samposm has quit [Ping timeout: 248 seconds]
samposm has joined #ocaml
larhat has quit [Ping timeout: 260 seconds]
larhat has joined #ocaml
answer_42 has quit [Ping timeout: 276 seconds]
ocp has joined #ocaml
<companion_cube> is there a reason for no 'finally' construct in ocaml?
<Kakadu> companion_cube: maybe you can emulate it with lambdas?
<companion_cube> it's just a question of convenience for external resources
answer_42 has joined #ocaml
sgnb has quit [Read error: Connection reset by peer]
sgnb` has joined #ocaml
mye has quit [Quit: mye]
<jbrown__> companion_cube: http://www.podval.org/~sds/ocaml-sucks.html has a moan about that (lack of unwind-protect)...
<companion_cube> exactly, it's a bit surprising to have try/except but not finally
sgnb` has quit [Remote host closed the connection]
sgnb has joined #ocaml
justdit has joined #ocaml
munga has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
larhat has quit [Quit: Leaving.]
larhat has joined #ocaml
justdit has joined #ocaml
mjonsson has quit [Ping timeout: 255 seconds]
justdit has quit [Read error: Connection reset by peer]
justdit has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
justdit has joined #ocaml
justdit has quit [Client Quit]
fraggle_laptop has joined #ocaml
oez has joined #ocaml
<oez> if i create a Set on the type (string * int) list * (string * sign * int) list (with type sign = PLUS | MINUS), would it behave like we expect it to?
<oez> (with Pervasives.compare)
xavierm02 has joined #ocaml
<ppseafield> oez: if you define sign like that, PLUS will be less than MINUS
<oez> ye i never use the order between two signs (as long as they're different)
Kakadu has quit [Quit: Konversation terminated!]
<ppseafield> oez: just learning ocaml myself, but it looks like yes
<oez> ok thanks
<oez> if i understand correctly Pervasives.compare should be able to compare any combination of lists, cartesian product, and abstract and base types, but only those
<companion_cube> be careful of cyclic structures
<oez> probably cannot compare two Sets with Pervasives.compare
<oez> companion_cube: why?
<companion_cube> no, it will have false negatives
<oez> right
<companion_cube> because compare (and (=)) traverse recursively data structures
fraggle_laptop has quit [Remote host closed the connection]
<oez> yes ok
<oez> as long as my values are well formed it should be fine then?
<companion_cube> as long as they do not contain mutable references to parents
<companion_cube> but yeah, if you use simple algebraic datatypes it will be fine
<companion_cube> do not hesitate to write comparison functions specific to your types
chambart has quit [Ping timeout: 255 seconds]
csag8264 has joined #ocaml
<oez> ok thanks
travisbrady has joined #ocaml
<thelema> can compare two sets, just will give structural comparison on the trees, not the set-theoretic equality
<oez> right
chambart has joined #ocaml
alexnixon has joined #ocaml
eikke has joined #ocaml
chambart has quit [Ping timeout: 245 seconds]
gustav__ has quit [Remote host closed the connection]
jpdeplaix has quit [Ping timeout: 245 seconds]
jpdeplaix has joined #ocaml
jamii has joined #ocaml
jamii has quit [Client Quit]
jamii has joined #ocaml
Cyanure has quit [Remote host closed the connection]
oez has quit [Ping timeout: 245 seconds]
munga has quit [Quit: Ex-Chat]
gustav__ has joined #ocaml
jamii has quit [Ping timeout: 248 seconds]
larhat has quit [Quit: Leaving.]
tac has joined #ocaml
hkBst has quit [Quit: Konversation terminated!]
fusillia has quit [Ping timeout: 276 seconds]
beckerb has quit [Quit: Konversation terminated!]
paolooo has quit [Ping timeout: 245 seconds]
Yoric has quit [Ping timeout: 252 seconds]
Neros has joined #ocaml
tac_ has joined #ocaml
tac has quit [Ping timeout: 245 seconds]
ocp has quit [Ping timeout: 260 seconds]
Submarine has joined #ocaml
answer_42 has quit [Ping timeout: 276 seconds]
ftrvxmtrx_ has joined #ocaml
csag8264 has quit [Ping timeout: 276 seconds]
tane has joined #ocaml
astertronistic has quit [Ping timeout: 252 seconds]
answer_42 has joined #ocaml
Neros has quit [Ping timeout: 264 seconds]
Submarine has quit [Read error: Operation timed out]
Neros has joined #ocaml
eikke has quit [Ping timeout: 268 seconds]
jamii has joined #ocaml
sepp2k has quit [Ping timeout: 240 seconds]
sepp2k has joined #ocaml
jamii has quit [Ping timeout: 246 seconds]
jamii has joined #ocaml
mye has joined #ocaml
Enjolras has quit [Read error: Connection reset by peer]
Xizor has joined #ocaml
pangoafk is now known as pango
ontologiae has quit [Ping timeout: 276 seconds]
Yoric has joined #ocaml
smondet has joined #ocaml
ftrvxmtrx has quit [Remote host closed the connection]
eikke has joined #ocaml
mye has quit [Quit: mye]
answer_42 has quit [Write error: Broken pipe]
mye has joined #ocaml
answer_42 has joined #ocaml
larhat has joined #ocaml
tac_ has left #ocaml []
oriba has joined #ocaml
scp has joined #ocaml
<scp> hello ocaml'ers
<scp> I wanna learn your language, anyone got a good starter guide for me?
Snark has joined #ocaml
<scp> I'm decent at haskell already, so it doesn't need to be a "procedural programmer's first" type guide
emmanuelux has joined #ocaml
_andre has quit [Quit: leaving]
<pippijn> scp: I think the ocaml manual is good for you
<bitbckt> scp: I usually recommend Jason Hickey's book, "Intro. to Objective Caml".
<pippijn> read the grammar section
<pippijn> knowing haskell, that should get you started
<pippijn> you know the concepts, now you just need to learn the syntax to apply them
<scp> cool, thanks guys
<pippijn> after that, I suggest you look at the manual index and pick whatever title looks interesting to you
<pippijn> and read it
cdidd has joined #ocaml
tac has joined #ocaml
oriba has quit [Quit: oriba]
tac has quit [Quit: Page closed]
Snark has quit [Quit: Quitte]
thelema has quit [Remote host closed the connection]
Cyanure has joined #ocaml
ftrvxmtrx_ has quit [Ping timeout: 260 seconds]
mjonsson has joined #ocaml
thomasga has quit [Ping timeout: 256 seconds]
Submarine has joined #ocaml
Submarine has quit [Changing host]
Submarine has joined #ocaml
thomasga has joined #ocaml
thomasga has quit [Remote host closed the connection]
djcoin has quit [Quit: WeeChat 0.3.9.1]
Cyanure has quit [Remote host closed the connection]
deu5 has joined #ocaml
gustav__ has quit [Read error: Connection reset by peer]
Xizor has quit [Quit: So yes it's mIRC under wine under debian double peche capital. ;) I'll soon see in kfreeBSD.]
ppseafield has quit [Quit: Leaving.]
tane has quit [Quit: Verlassend]
Yoric has quit [Ping timeout: 252 seconds]
lolcathost has joined #ocaml
scp has quit [Ping timeout: 240 seconds]
ftrvxmtrx_ has joined #ocaml
eikke has quit [Ping timeout: 252 seconds]
TDJACR has joined #ocaml
answer_42 has quit [Quit: WeeChat 0.3.9]
xavierm02 has quit [Quit: Leaving]
mye has quit [Quit: mye]
smondet has quit [Ping timeout: 260 seconds]
chambart has joined #ocaml
thelema has joined #ocaml
ontologiae has joined #ocaml
ivan\ has quit [Ping timeout: 252 seconds]
jamii has quit [Ping timeout: 246 seconds]
Anarchos has joined #ocaml
ivan\ has joined #ocaml
travisbrady has quit [Quit: travisbrady]
ontologiae has quit [Ping timeout: 276 seconds]
BiDOrD_ has joined #ocaml
BiDOrD has quit [Ping timeout: 260 seconds]
chambart has quit [Ping timeout: 246 seconds]
fraggle_ has quit [Ping timeout: 245 seconds]
Submarine has quit [Remote host closed the connection]
chambart has joined #ocaml
lolcathost has quit [Ping timeout: 240 seconds]
lolcathost has joined #ocaml
Anarchos has quit [Quit: sleep time]
fraggle_ has joined #ocaml
sepp2k has quit [Remote host closed the connection]
lolcathost has quit [Ping timeout: 260 seconds]
lolcathost has joined #ocaml
pkrnj has joined #ocaml
pkrnj has quit [Client Quit]
pkrnj has joined #ocaml
emmanuelux has quit [Quit: emmanuelux]
chambart has quit [Ping timeout: 246 seconds]