smimou changed the topic of #ocaml to: OCaml 3.08.3 available! | Archive of Caml Weekly News: http://sardes.inrialpes.fr/~aschmitt/cwn/ | A free book: http://cristal.inria.fr/~remy/cours/appsem/ | Mailing List: http://caml.inria.fr/bin/wilma/caml-list/ | Cookbook: http://pleac.sourceforge.net/
gim has quit ["dodo"]
__DL__ has quit [Read error: 54 (Connection reset by peer)]
_fab has quit [Read error: 145 (Connection timed out)]
_fab has joined #ocaml
Rearden has quit ["Client Exiting"]
joeytwiddle_onth is now known as joeytwiddle
pattern_ is now known as pattern
batdog|gone is now known as batdog
ulfdoz has joined #ocaml
vezenchio has joined #ocaml
ulfdoz_ has quit [Read error: 60 (Operation timed out)]
Herrchen_ has joined #ocaml
Herrchen has quit [Read error: 145 (Connection timed out)]
Nutssh has joined #ocaml
Smerdyakov has joined #ocaml
batdog is now known as batdog|gone
bk_ has quit ["Leaving IRC - dircproxy 1.1.0"]
Lycan359 has joined #ocaml
Lycan359 has quit []
avida has joined #ocaml
Smerdyakov has quit [Read error: 54 (Connection reset by peer)]
_shawn has joined #ocaml
shawn has quit [Connection timed out]
Sonarman has joined #ocaml
Nutssh has quit [Read error: 60 (Operation timed out)]
araujo has quit ["Programs must be written for people to read, and only incidentally for machines to execute"]
_fab has quit [Remote closed the connection]
__DL__ has joined #ocaml
Tachyon76 has joined #ocaml
vodka-goo has joined #ocaml
Herrchen_ is now known as Herrchen
Tachyon76 has quit [Read error: 54 (Connection reset by peer)]
vodka-goo has quit []
Submarine_ has joined #ocaml
__DL__ has quit [Remote closed the connection]
__DL__ has joined #ocaml
Submarine_ has quit ["Leaving"]
__DL__ has quit [Remote closed the connection]
__DL__ has joined #ocaml
araujo has joined #ocaml
araujo has quit [Client Quit]
araujo has joined #ocaml
Tachyon76 has joined #ocaml
Skal has joined #ocaml
cjohnson has joined #ocaml
Tachyon76 has quit ["Leaving"]
cjohnson has quit [Connection timed out]
cjohnson has joined #ocaml
Snark has joined #ocaml
<Snark> slt
<pflanze> Has anyone tried CPS style programming with ocaml?
<Snark> CPS?
<Herrchen> what's the problem with using CPS and ocaml? functions are first class citizens
<pflanze> Snark: continuation passing style
<pflanze> Herrchen: just asking. Is ocaml optimizing away closure creation as much as possible or does it cost a new closure on each continuation?
<pflanze> One could use ocamlp4 for extending ocaml with first class continuations, if it doesn't slow down everything too much.
Hadaka has quit ["leaving"]
<Herrchen> pflanze: uhh - don't know
<Herrchen> pflanze: something special you want to do?
<pflanze> I just want first-class continuation
<pflanze> (as in scheme or SML)
<Herrchen> SML just with smlnj
<Herrchen> well
<pflanze> yes
<Herrchen> don't think that they are optimized away
<Herrchen> the compilation scheme is completely different in smlnj or scheme to implement continutations
<Herrchen> my guess is, to benchmark and then check if the performance is good enough
<Herrchen> maybe using it only for special stuff
<Herrchen> or implement the stuff you want to do with CPS in another way
<pflanze> Yes, I have to think more about it
<Herrchen> or use smlnj :p
<pflanze> If not optimized, it would at least not use stack space, so it could also help prevent stack overflows ;^)
Naked has joined #ocaml
ExElNeT has joined #ocaml
<ExElNeT> i cant make cameleon ;/ and my lablgtk is 2.4.0 here is the error http://phpfi.com/65439
<ExElNeT> 1.2.6 works ...
<Herrchen> pflanze: yes of course - but then your heap maybe overflows :p - well I know what you mean - but stack overflows aren't that problem with proper tail recursive functions, so ...
<pflanze> Sure. But the basic problem is somewhat related: if ocaml would maintain it's stackframes on the heap (or a separate segmented stack), it would have solved both the stack overflow problem and could offer fast continuations.
<Herrchen> but continuations are more than just stack frames on heap
<mrvn_> Herrchen: why?
<mrvn_> apart from continuations not being stack frames as you can't pop/push them.
<pflanze> Continuations are basically "saved" stack frames.
<Herrchen> mrvn_: you have to save parts of the sack
<Herrchen> pflanze: that I ment
<mrvn_> Herrchen: you have to save the current bindings.
<mrvn_> So bindings can't be in stack frames but must be heap allocated.
<Herrchen> well you have to save anything from the stack that you may need later
<Herrchen> so you basically allocate anything on the heap of course
<Herrchen> as e.g. smlnj does
<mrvn_> Get rid of the stack completly.
<Herrchen> well I would use the stack for local computations anyway
<mrvn_> Herrchen: those you do in registers. :)
<Herrchen> mrvn_: there are architectures with too few registers :)
<mrvn_> Herrchen: screw i386.
<Herrchen> :)
<Herrchen> if one needs to implement a compiler, i386 is really a piece of shit
<mrvn_> It is quite easy to transform ocaml code into CPS and then generate asm.
<mrvn_> you can use the stack for temporary variables but everything bound would be on the heap.
<Herrchen> I think he wanted to do this without creating a new compiler
<mrvn_> I doubt that would be possible.
<Herrchen> I too.
pattern has quit ["..."]
_JusSx_ has joined #ocaml
<pflanze> mrvn_: see above, using a transformation to CPS style in ocamlp4 it should be possible. The only real question should be how fast that is.
bk_ has joined #ocaml
cjohnson has quit [Remote closed the connection]
pattern_ has joined #ocaml
vodka-goo has joined #ocaml
joeytwiddle has quit ["Leaving"]
<dan2> mrvn_: cps?
batdog|gone is now known as batdog
dan2 has quit [Read error: 131 (Connection reset by peer)]
bk_ has quit [brown.freenode.net irc.freenode.net]
ExElNeT has quit [brown.freenode.net irc.freenode.net]
ulfdoz has quit [brown.freenode.net irc.freenode.net]
pflanze has quit [brown.freenode.net irc.freenode.net]
calvin_ has quit [brown.freenode.net irc.freenode.net]
shrimpx has quit [brown.freenode.net irc.freenode.net]
mattam has quit [brown.freenode.net irc.freenode.net]
dan2 has joined #ocaml
bk_ has joined #ocaml
ExElNeT has joined #ocaml
ulfdoz has joined #ocaml
pflanze has joined #ocaml
calvin_ has joined #ocaml
mattam has joined #ocaml
shrimpx has joined #ocaml
Smerdyakov has joined #ocaml
pflanze has quit [brown.freenode.net irc.freenode.net]
ulfdoz has quit [brown.freenode.net irc.freenode.net]
shrimpx has quit [brown.freenode.net irc.freenode.net]
mattam has quit [brown.freenode.net irc.freenode.net]
calvin_ has quit [brown.freenode.net irc.freenode.net]
bk_ has quit [brown.freenode.net irc.freenode.net]
ExElNeT has quit [brown.freenode.net irc.freenode.net]
bk_ has joined #ocaml
ExElNeT has joined #ocaml
ulfdoz has joined #ocaml
pflanze has joined #ocaml
calvin_ has joined #ocaml
mattam has joined #ocaml
shrimpx has joined #ocaml
karryall has quit [brown.freenode.net irc.freenode.net]
Snark has quit [brown.freenode.net irc.freenode.net]
Herrchen has quit [brown.freenode.net irc.freenode.net]
karryall has joined #ocaml
Smerdyakov has quit []
ExElNeT has left #ocaml []
Snark has joined #ocaml
batdog is now known as batdog|gone
bk_ has quit ["Leaving IRC - dircproxy 1.1.0"]
batdog|gone is now known as batdog
pango_ has joined #ocaml
_JusSx__ has joined #ocaml
pango has quit [Read error: 110 (Connection timed out)]
_JusSx_ has quit [Read error: 110 (Connection timed out)]
mrvn_ has quit ["reboot"]
Sonarman has quit [Read error: 104 (Connection reset by peer)]
pattern_ has quit ["..."]
pattern_ has joined #ocaml
mrvn has joined #ocaml
Sonarman has joined #ocaml
vezenchio has quit ["Ayn Rand encapsulates the rage that every teenager feels on finding that his first paycheque has had taxes taken out of it"]
Lycan359 has joined #ocaml
Lycan359 has left #ocaml []
<Snark> good night
Snark has left #ocaml []
Sonarman has quit [Read error: 145 (Connection timed out)]
Sonarman has joined #ocaml
vodka-goo has quit []
<mrvn> n8
bk_ has joined #ocaml
monochrom has joined #ocaml
Skal has quit ["Client exiting"]
pflanze has quit [Read error: 60 (Operation timed out)]
Smerdyakov has joined #ocaml
_JusSx__ has quit ["leaving"]