jlouis has quit [Read error: 110 (Connection timed out)]
love-pingoo has quit ["Connection reset by pear"]
bluestorm has quit ["Konversation terminated!"]
buluca has joined #ocaml
seafoodX has joined #ocaml
seafoodX has quit [Client Quit]
psnively has quit []
postalchris has joined #ocaml
postalchris has quit [Client Quit]
buluca has quit [Read error: 113 (No route to host)]
smimou has quit ["bli"]
kelaouchi has quit [Read error: 110 (Connection timed out)]
seafoodX has joined #ocaml
mordaunt has joined #ocaml
[azoic] has joined #ocaml
szsz has joined #ocaml
seafoodX has quit []
schme has joined #ocaml
dbueno has quit ["This computer has gone to sleep"]
piggybox_ has joined #ocaml
dbueno has joined #ocaml
ramkrsna_ has joined #ocaml
piggybox has quit [Connection timed out]
ramkrsna has quit [Read error: 113 (No route to host)]
Torment has quit [Read error: 110 (Connection timed out)]
dbueno has quit ["Leaving"]
seafoodX has joined #ocaml
seafoodX has quit []
krumms_ has quit []
<
jdavis_>
how does ocaml differentiate between pure functions and functions with side effects (like syscalls)?
<
jdavis_>
and how do I make sure the side effects happen when I want them to?
netx has quit ["Leaving"]
netx has joined #ocaml
skal has joined #ocaml
bluestorm has joined #ocaml
[azoic] has quit [Read error: 104 (Connection reset by peer)]
bluestorm has quit [Remote closed the connection]
gaja has quit ["leaving"]
[azoic] has joined #ocaml
ramkrsna_ is now known as ramkrsna
<
flux>
jdavis_, it doesn't. it is determined by evaluation order.
<
flux>
let a = .. in let b = .. in .. -> the first ".." is evaluated before the second ".."
<
flux>
note that this doesn't always mean top-to-down, left-to-right: let l = a::b::c -> c will be evaluated first.
<
flux>
however I don't think such behavior is quite specified, so I wouldn't personally write code that relies on that.
ramki has joined #ocaml
<
jdavis_>
flux: I'm not sure I completely understand
<
flux>
let a = output_string "a" in let b = output_string "b" .. will output ab
<
jdavis_>
I suppose a syscall only has it's side effects when all arguments to the function are fully evaluated
<
flux>
hmh, make that print_string
<
flux>
usually functions are evaluated only then their all arguments have been applied.. you can't see that from the function type, though
<
jdavis_>
I think it would help if I could see some example code
<
jdavis_>
is there a sample out there that has a lot of functions with side effects in?
<
jdavis_>
where execution order is important?
jonathanv has joined #ocaml
<
jdavis_>
Well, thanks, I'll just read and experiment some more.
<
zvrba>
maybe a stupid question - why does Ocaml seem to have larger community than SML ?
jonafan has quit [Read error: 110 (Connection timed out)]
[azoic] has quit []
<
flux>
no idea. but perhaps the goal of ocaml (be a practical ml-family language) has been reached?
Mr_Awesome has quit [Read error: 110 (Connection timed out)]
kelaouchi has joined #ocaml
seafoodX has joined #ocaml
seafoodX has quit []
mordaunt has quit ["Konversation terminated!"]
seafoodX has joined #ocaml
<
zvrba>
why isn't sml considered practical?
seafoodX has quit []
<
mbishop>
I think it's the same reason Scheme isn't considered practical
seafoodX has joined #ocaml
Mr_Awesome has joined #ocaml
leo037 has joined #ocaml
Jedai has joined #ocaml
<
Mr_Awesome>
zvrba: simple, ocaml has a cooler sounding name
<
flux>
also: ocaml has objects!
<
Mr_Awesome>
no... that cant be it
<
Mr_Awesome>
i dont really like OO so i never use it anyway
<
zvrba>
flux: ah, thx for the link
<
zvrba>
objects just suck :P
Mr_Awesome has quit [Read error: 110 (Connection timed out)]
Jedai has quit [Read error: 110 (Connection timed out)]
joshcryer has joined #ocaml
oc13 has joined #ocaml
Abo-Marwan14 has quit [Remote closed the connection]
screwt881 has quit [Remote closed the connection]
screwt881 has joined #ocaml
Abo-Marwan14 has joined #ocaml
seafoodX has quit []
pango has quit [Remote closed the connection]
pango has joined #ocaml
szsz has quit [Read error: 104 (Connection reset by peer)]
seafoodX has joined #ocaml
Tetsuo has joined #ocaml
gaja has joined #ocaml
tetsuo__ has joined #ocaml
Tetsuo has quit [Read error: 104 (Connection reset by peer)]
smimou has joined #ocaml
seafoodX has left #ocaml []
zmdkrbou has joined #ocaml
zmdkrbou has quit [Read error: 113 (No route to host)]
zmdkrbou has joined #ocaml
baruk has quit ["leaving"]
tetsuo__ has quit [Remote closed the connection]
[azoic] has joined #ocaml
crathman has joined #ocaml
authentic has quit [Read error: 113 (No route to host)]
authentic has joined #ocaml
Mr_Awesome has joined #ocaml
pango has quit [Remote closed the connection]
[azoic] has quit []
pango has joined #ocaml
leo037 has quit ["Leaving"]
bluestorm has joined #ocaml
seafoodX has joined #ocaml
seafoodX has quit [Client Quit]
ygrek has joined #ocaml
ramki has quit [Remote closed the connection]
Mr_Awesome has quit [Read error: 110 (Connection timed out)]
jlouis has joined #ocaml
Jedai has joined #ocaml
ita has joined #ocaml
kelaouchi has quit [Read error: 110 (Connection timed out)]
bluestorm has quit ["Konversation terminated!"]
bluestorm has joined #ocaml
Tetsuo has joined #ocaml
smimou has quit ["bli"]
smimou has joined #ocaml
crathman has quit ["ChatZilla 0.9.78.1 [Firefox 2.0.0.7/2007091417]"]
Torment has joined #ocaml
kelaouchi has joined #ocaml
psnively has joined #ocaml
Jedai has quit [Read error: 110 (Connection timed out)]
leo037 has joined #ocaml
ygrek has quit [Remote closed the connection]
ygrek has joined #ocaml
bluestorm has quit [Read error: 113 (No route to host)]
Mr_Awesome has joined #ocaml
kelaouchi has quit ["leaving"]
ygrek has quit [Remote closed the connection]
oc13 has left #ocaml []
buluca has joined #ocaml
gunark has joined #ocaml
Tetsuo has quit ["Leaving"]
leo037 has quit ["Leaving"]
leo037 has joined #ocaml
ita has quit [Read error: 104 (Connection reset by peer)]
Demitar has quit [Read error: 110 (Connection timed out)]
nuncanada has joined #ocaml
leo037 has quit ["Leaving"]
buluca has quit [Excess Flood]
buluca has joined #ocaml
Mr_Awesome has quit [Read error: 110 (Connection timed out)]