gildor changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 3.12.1 http://bit.ly/nNVIVH
dnolen has quit [Quit: dnolen]
mjonsson has quit [Remote host closed the connection]
emmanuelux has joined #ocaml
emmanuelux has quit [Quit: Ex-Chat]
emmanuelux has joined #ocaml
grettke has joined #ocaml
grettke has left #ocaml []
smerz has quit [Remote host closed the connection]
Boscop has quit [Ping timeout: 258 seconds]
joewilliams_away is now known as joewilliams
dnolen has joined #ocaml
emmanuel_ has joined #ocaml
emmanuel_ has quit [Client Quit]
emmanuelux has quit [Remote host closed the connection]
emmanuelux has joined #ocaml
emmanuelux has quit [Ping timeout: 244 seconds]
jamii has quit [Read error: Operation timed out]
everyonemines has joined #ocaml
arubin has joined #ocaml
arubin has quit [Quit: arubin]
dnolen has quit [Quit: dnolen]
Garen has quit [Remote host closed the connection]
joewilliams is now known as joewilliams_away
ankit9 has joined #ocaml
<everyonemines> What's the current status of batteries vs core?
<everyonemines> Is one clearly better now?
alxbl has joined #ocaml
junsuijin has quit [Quit: Leaving.]
edwin has joined #ocaml
f[x] has joined #ocaml
ygrek has joined #ocaml
Kakadu has joined #ocaml
Cyanure has joined #ocaml
everyonemines has quit [Quit: Leaving.]
ttamttam has joined #ocaml
Cyanure has quit [Remote host closed the connection]
thomasga has joined #ocaml
ygrek has quit [Ping timeout: 248 seconds]
larhat has joined #ocaml
Cyanure has joined #ocaml
Kakadu has quit [Read error: Operation timed out]
Kakadu has joined #ocaml
rixed has joined #ocaml
sebz has joined #ocaml
ygrek has joined #ocaml
<gildor> larhat: I have seen your bug yesterday, I'll fix with release 0.2.1
munga has joined #ocaml
lopex has joined #ocaml
ygrek has quit [Remote host closed the connection]
ikaros has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
emmanuelux has joined #ocaml
chambart has quit [Ping timeout: 260 seconds]
sgnb has quit [Read error: Connection reset by peer]
sgnb has joined #ocaml
munga has quit [Ping timeout: 240 seconds]
<Kakadu> Hi all!
<Kakadu> Is it diificult to write a tool which greps OCaml source files and extract information about class type defined there?
<adrien> Kakadu: why do you want to do that?
<adrien> what is the final purpose?
<adrien> because mli files should do it, and ocamlbrowser is a fine tool
<adrien> Have to go bbl
<Kakadu> adrien: I want to find a simple way to inherit Qt's classes from OCaml
<Kakadu> because now I have no idea how to use Qt's Model-View architecture in lablqt
<Kakadu> in Qt coder inherits from QAbstract????Model and have a fun
<Kakadu> but how to do it in lablqt????
<Kakadu> also I absolutely don't know how PyQt suuports that...
<raphael-p> Kakadu: generally, it is difficult to make a "binding system" for an inheritance mechanism
<raphael-p> you can have a look at the OClosure project, they had to face the same issue
<raphael-p> (I don't remember the trick they used though)
<Kakadu> raphael-p: I think without inheritance trick lablqt will be semi-useful only
sebz has joined #ocaml
milosn has quit [Ping timeout: 260 seconds]
emmanuelux has quit [Ping timeout: 244 seconds]
sebz has quit [Quit: Computer has gone to sleep.]
hcarty has joined #ocaml
emmanuelux has joined #ocaml
_andre has joined #ocaml
ttamttam has quit [Ping timeout: 252 seconds]
rks has joined #ocaml
hcarty has quit [Quit: leaving]
hcarty has joined #ocaml
avsm has joined #ocaml
bitbckt has quit [Quit: out]
bitbckt has joined #ocaml
milosn has joined #ocaml
avsm has quit [Quit: Leaving.]
farb has joined #ocaml
ag4ve has quit [Ping timeout: 258 seconds]
sebz has joined #ocaml
farb has left #ocaml []
farb has joined #ocaml
farb has quit [Client Quit]
<adrien> Kakadu: it's quite likely that you'll have to code some things yourself
ttamttam has joined #ocaml
everyonemines has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
Cyanure has quit [Ping timeout: 244 seconds]
sebz has joined #ocaml
milosn has quit [Read error: Operation timed out]
ttamttam has quit [Quit: ttamttam]
dnolen has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
bzzbzz has quit [Quit: leaving]
milosn has joined #ocaml
avsm has joined #ocaml
<everyonemines> How hard do you think it would be to make a mlton ocaml frontend?
<adrien> very?
<everyonemines> Why? SML and ocaml are pretty similar...
<everyonemines> does it not support some ocaml features?
<everyonemines> or are you talking about support for the libraries
<hcarty> everyonemines: The language's make different assumptions about how the internals work. There was a presentation from the mlton folks which (jokingly?) mentioned ocamlton.
<hcarty> s/language's/languages/
<adrien> there will be different things internally
<adrien> also, I think the compilation speed of mlton is horrible
<everyonemines> I thought it was ~10x ocamlopt, which is, well, tolerable
<flux> everyonemines, maybe if you compile everything, but ocamlopt supports compiling smaller units than whole programs
<everyonemines> hcarty: I'd be interested in info about those kind of differences.
<flux> everyonemines, (mlton is a whole-program-compiler)
<everyonemines> i know
<hcarty> everyonemines: Integer sizes, separate compilation, first class modules, the class/object system
<flux> although in practice I wouldn't mind either. one would rarely do that compilation.
<flux> I think a big problem might be the memory model and the ocaml-c-interface. so if you change the memory model, you break the C interfacing code as well.
<hcarty> everyonemines: Not to discourage you from trying!
<everyonemines> so sml has 32 bit ints, but that should still work with ocaml code
<hcarty> But it is not likely be a trivial task.
<everyonemines> and it doesn't support objects, but lots of ocaml code doesn't use them.
<everyonemines> what do you mean by first class modules as a difference? functors?
<flux> everyonemines, ocaml recently gained modules-as-variables support. I guess there's not much core around that uses that yet.
<flux> not sure if that would be a big problem to support, though
<flux> AFAIK ocaml 'almost' had the support anyway, in how its internals worked
<everyonemines> That page mentions using a hashtable to select a module based on input....
<everyonemines> isn't that incompatible with ocaml's compilation??
<flux> I wonder how far a 'syntactic converter' could go.. taking the AST and regenerating matching code..
<flux> everyonemines, didn't read the page, but probably not. polymorphic variants use the same technique.
<everyonemines> that would be really slow then
<flux> (and in principle, and in practice in rare cases, that can be a problem)
<rks> flux: what do you mean by « polymorphic variants use the same technique » what technique?
<flux> rks, hashing to convert names to numbers. maybe not the same, but similar.
<rks> Hum, ok
<rks> btw, in the doc page I linked, the hashtable wasn't related to the internals, it was just an example :
<rks> « eh look, you can store modules in an hashtable »
dnolen has quit [Quit: dnolen]
<rks> (and yes ok, the compilation/representation of variants is discussed in Garrigue's paper yes)
<rks> (yes = I remember something about converting them to numbers :-')
<everyonemines> Ah, I see, it's the same as storing a bunch of functions in a hashtable.
<rks> yes :)
<everyonemines> And handled with function pointers. In fact I suspect the first-class module example is implemented as a function hashtable.
<everyonemines> Hmm, no, you would store the module number as a variable.
<everyonemines> Then use a switch statement on every function call from that module.
avsm has quit [Quit: Leaving.]
<everyonemines> I feel like ocaml -> mlton would be useful even without objects or first-class modules...
<everyonemines> but maybe I'm underestimating their use.
Boscop has joined #ocaml
<flux> it would definitely be a good start if such a compiler or converter existed.
<Kakadu> man, how to execute `ocamlc -where` from OCaml and take output string?
Cyanure has joined #ocaml
thomasga has left #ocaml []
ttamttam has joined #ocaml
<raphael-p> Kakadu: look at Unix.execv* functions
<raphael-p> also Sys.command
<raphael-p> (more portable)
<flux> Unix.open_process_in
<Kakadu> raphael-p: Sys.command executes command and write output to stdout (I think). It is not what I want
<Qrntzz> it indeed does, as in you cannot assign the result of Sys.command to a variable
<Kakadu> flux: raphael-p: Qrntzz: thanks
<Kakadu> flux: yeah, it works!
<everyonemines> You can read from stdout to a variable.
<flux> I imagine that's exactly what he's doing now :)
<everyonemines> You could write a function that returns stdout as a string from running sys.command.
<everyonemines> But I agree that a built-in way to execute a string and return a string would be good.
<Kakadu> )
<flux> everyonemines, how would you write that without the Unix module?
<everyonemines> What's wrong with unix? I thought it works on windows too?
<flux> it does
<everyonemines> My understanding is it's portable.
<flux> I'm just wondering why you keep referring to Sys.command :)
<flux> (ie. as if Sys.command was somehow a part of the solution)
<everyonemines> oops
<everyonemines> only did that once
<flux> oh right, someone else referred to it first
<everyonemines> to answer your question, you can write to a file with sys.command and then read that file
<everyonemines> on unix you could use mknod to prevent disk writes
<flux> I can see that being done in shell scripts, but..
<everyonemines> or perhaps mkfifo
<flux> in any case you will likely write the node into the disk, or update the directory's access time. well, unless it's linux tmpfs.
bitbckt has quit [Quit: out]
bitbckt has joined #ocaml
junsuijin has joined #ocaml
tac-tics has joined #ocaml
Snark has joined #ocaml
avsm has joined #ocaml
chambart has joined #ocaml
bitbckt has quit [Quit: out]
bitbckt has joined #ocaml
larhat has quit [Quit: Leaving.]
husten has joined #ocaml
<f[x]> and now it's time for a little puzzle - can anyone find a solution : http://paste.in.ua/3132/ ?
<f[x]> namely - tell the typechecker that argument function is itself polymorphic on it's argument
emmanuelux has quit [Quit: Ex-Chat]
emmanuelux has joined #ocaml
<f[x]> bonus for staying within 3.11, but I am very curious of any solution
avsm has quit [Ping timeout: 252 seconds]
joewilliams_away is now known as joewilliams
srcerer has joined #ocaml
mdelaney has joined #ocaml
<Kakadu> Men, How to call method of OCaml's object from C?
<flux> I shall just say that IIRC there's an API for that :)
<Kakadu> Oh, I've found!
lopexx has joined #ocaml
ztfw has joined #ocaml
lopex has quit []
lopexx is now known as lopex
ag4ve has joined #ocaml
mdelaney has quit [Quit: mdelaney]
husten has quit [Ping timeout: 252 seconds]
mdelaney has joined #ocaml
<_habnabit> f[x], I can't figure out what you want to change about that code. the type collection isn't polymorphic
mdelaney has quit [Client Quit]
<_habnabit> or you wanted to pass a function that could take either an int or a string?
<_habnabit> (wouldn't it be specialized after its first invocation, and then unusable for anything else?)
<hcarty> f[x]: Got it :-)
<hcarty> f[x]: I had to do something similar for ocaml-hdf
ztfw has quit [Ping timeout: 256 seconds]
ag4ve has quit [Ping timeout: 258 seconds]
<hcarty> f[x]: It may not be the only 3.11-able approach, but wrapping f in a record will work: type f_t = { f : 'a. 'a -> unit }
fschwidom has joined #ocaml
Boscop_ has joined #ocaml
Boscop has quit [Ping timeout: 260 seconds]
fschwidom has quit [Ping timeout: 252 seconds]
Boscop__ has joined #ocaml
ttamttam has left #ocaml []
Boscop_ has quit [Ping timeout: 258 seconds]
_andre has quit [Quit: leaving]
Associat0r has joined #ocaml
Associat0r has quit [Changing host]
Associat0r has joined #ocaml
Associat0r has quit [Client Quit]
Boscop__ is now known as Boscop
Boscop has quit [Changing host]
Boscop has joined #ocaml
avsm1 has joined #ocaml
lopex has quit [Ping timeout: 258 seconds]
lopex has joined #ocaml
tac-tics has quit [Read error: Operation timed out]
tac-tics has joined #ocaml
Boscop_ has joined #ocaml
Boscop has quit [Disconnected by services]
Boscop_ is now known as Boscop
Boscop has quit [Changing host]
Boscop has joined #ocaml
rks has quit [*.net *.split]
schme has quit [*.net *.split]
schme has joined #ocaml
schme has quit [Changing host]
schme has joined #ocaml
rks has joined #ocaml
Snark has quit [Quit: Quitte]
edwin has quit [Remote host closed the connection]
Boscop has quit [Ping timeout: 276 seconds]
Boscop has joined #ocaml
Kakadu has quit [Ping timeout: 244 seconds]
husten has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
husten has quit [Quit: Page closed]
husten has joined #ocaml
husten has quit [Client Quit]
benus has joined #ocaml
mbac_ has quit [Ping timeout: 260 seconds]
mbac has joined #ocaml
dcolish has quit [Ping timeout: 244 seconds]
Tianon has quit [Ping timeout: 244 seconds]
bitbckt has quit [Ping timeout: 240 seconds]
dcolish has joined #ocaml
benus has quit [Remote host closed the connection]
bitbckt has joined #ocaml
bitbckt has quit [Changing host]
bitbckt has joined #ocaml
mbac has quit [Ping timeout: 255 seconds]
mbac has joined #ocaml
bitbckt has quit [Ping timeout: 240 seconds]
seafood has joined #ocaml
seafood_ has joined #ocaml
seafood__ has joined #ocaml
bitbckt has joined #ocaml
seafood has quit [Ping timeout: 244 seconds]
seafood_ has quit [Read error: No route to host]
seafood has joined #ocaml
seafood__ has quit [Ping timeout: 260 seconds]
avsm1 has quit [Quit: Leaving.]
Amorphous has quit [Ping timeout: 258 seconds]
seafood has quit [Ping timeout: 244 seconds]
tac-tics has quit [Quit: tac-tics]
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
Amorphous has joined #ocaml
Tianon has quit [Ping timeout: 240 seconds]
seafood has joined #ocaml
seafood has quit [Read error: Connection reset by peer]
seafood has joined #ocaml
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
seafood has quit [Client Quit]
bitbckt has quit [Ping timeout: 240 seconds]
bitbckt has joined #ocaml
bitbckt has quit [Changing host]
bitbckt has joined #ocaml
bitbckt has quit [Remote host closed the connection]
Tianon has quit [Ping timeout: 244 seconds]
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
bitbckt has joined #ocaml
bitbckt_ has joined #ocaml
bitbckt has quit [Ping timeout: 244 seconds]
bitbckt_ is now known as bitbckt
bitbckt has quit [Changing host]
bitbckt has joined #ocaml
bitbckt has quit [Ping timeout: 240 seconds]
dcolish has quit [Ping timeout: 240 seconds]
bitbckt has joined #ocaml
Tianon has quit [Ping timeout: 244 seconds]
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
bitbckt has quit [Ping timeout: 240 seconds]
bitbckt has joined #ocaml
Boscop_ has joined #ocaml
Boscop has quit [Disconnected by services]
Boscop_ is now known as Boscop
Boscop has quit [Changing host]
Boscop has joined #ocaml
dcolish has joined #ocaml
joewilliams is now known as joewilliams_away
bitbckt has quit [Ping timeout: 240 seconds]
bitbckt has joined #ocaml
bitbckt has quit [Ping timeout: 240 seconds]
bitbckt has joined #ocaml
ulfdoz_ has joined #ocaml
Tianon has quit [Ping timeout: 240 seconds]
arubin has joined #ocaml
ulfdoz has quit [Ping timeout: 256 seconds]
ulfdoz_ is now known as ulfdoz
joewilliams_away is now known as joewilliams
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
bitbckt has quit [Ping timeout: 240 seconds]
bitbckt has joined #ocaml
_habnabit has quit [Ping timeout: 240 seconds]
emmanuelux has quit [Quit: Ex-Chat]
Tianon has quit [Ping timeout: 244 seconds]
_habnabit has joined #ocaml
bitbckt has quit [Client Quit]
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
emmanuelux has joined #ocaml
emmanuel_ has joined #ocaml
emmanuel_ has quit [Read error: Connection reset by peer]
bitbckt has joined #ocaml