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
rgrinberg has joined #ocaml
wtetzner has quit [Remote host closed the connection]
wtetzner has joined #ocaml
bzzbzz has quit [Quit: leaving]
eb4890 has joined #ocaml
mdelaney has quit [Quit: mdelaney]
rgrinberg has quit [Remote host closed the connection]
sebz has joined #ocaml
sebz has quit [Client Quit]
sebz has joined #ocaml
sebz has quit [Client Quit]
ftrvxmtrx has quit [Quit: Leaving]
wtetzner has quit [Read error: Connection reset by peer]
wtetzner has joined #ocaml
lopex has quit []
dnolen has quit [*.net *.split]
rwmjones has quit [*.net *.split]
dnolen has joined #ocaml
rwmjones has joined #ocaml
wtetzner has quit [Read error: Connection reset by peer]
joewilliams is now known as joewilliams_away
wtetzner has joined #ocaml
wtetzner has quit [Client Quit]
wtetzner has joined #ocaml
wtetzner has quit [Remote host closed the connection]
eb4890 has quit [Ping timeout: 245 seconds]
ocamlnoob has joined #ocaml
<ocamlnoob> When writing types like ('a * 'b * 'c) -> 'd -> 'e is there a difference if you have the parentehses or not?
<thelema> yes
<thelema> 'a * 'b * 'c -> 'd -> 'e is 'a * 'b * ('c -> 'd -> 'e)
<ocamlnoob> What type of situation would cause the parentheses to be on the front part then?
ftrvxmtrx has joined #ocaml
<thelema> ocamlnoob: sorry, I'm not sure I understand your question - you're asking why is the type ('a * 'b * 'c) -> 'd -> 'e useful?
<ocamlnoob> thelema: I'm not even sure what would have a type like that
<thelema> that particular type isn't particularly useful - it's unsound for the result type to be polymorphic and unrelated to any input type
Kevin has joined #ocaml
<thelema> but for particular values of 'a through 'e, the type skeleton is useful.
<thelema> it's a two parameter function where the first parameter is a triple of three values.
<thelema> (or you can look at it as a four parameter function where the first three parameters have to be passed together)
Kevin is now known as Karbon
Karbon has quit [Remote host closed the connection]
surikator has quit [Quit: Computer is sleeping. I'm probably not.]
<ocamlnoob> thelema: I thought a two parameter function with the first being a triple like let f (a, b, c) d ... would have type, say, string*string*string -> string -> ... if abcd were strings
<_habnabit> Yes.
ocamlnoob has quit [Quit: Page closed]
joewilliams_away is now known as joewilliams
sebz has joined #ocaml
sebz has quit [Client Quit]
sebz has joined #ocaml
dnolen has quit [Quit: dnolen]
dnolen has joined #ocaml
ulfdoz has joined #ocaml
dnolen has quit [Quit: dnolen]
joewilliams is now known as joewilliams_away
junsuijin has quit [Quit: Leaving.]
ankit9 has joined #ocaml
ulfdoz has quit [Ping timeout: 264 seconds]
mdelaney has joined #ocaml
mdelaney has quit [Quit: mdelaney]
arubin has quit [Quit: arubin]
bobry1 has joined #ocaml
bacam has quit [Ping timeout: 258 seconds]
ankit9 has quit [Quit: Leaving]
f[x] has quit [Ping timeout: 260 seconds]
Cyanure has joined #ocaml
Snark_ has joined #ocaml
Snark_ is now known as Snark
ttamttam has joined #ocaml
ankit9 has joined #ocaml
edwin has joined #ocaml
edwin has quit [Read error: Connection reset by peer]
<adrien> I've tried a number of combinations of function calls in lablgtk2's threading and unless I've missed the right one, I'm getting horrible throughput from my file loading
<adrien> I'm maybe going to try with lwt
<adrien> and lwt threading for lablgtk
ikaros has joined #ocaml
thomasga has joined #ocaml
sebz has quit []
Modius has quit [Read error: Connection reset by peer]
thelema has quit [Remote host closed the connection]
Modius has joined #ocaml
patronus_ has quit [Read error: Connection reset by peer]
patronus has joined #ocaml
zzz_ has quit [Remote host closed the connection]
zzz_ has joined #ocaml
ttamttam has quit [Ping timeout: 246 seconds]
Pepe_ has quit [Ping timeout: 246 seconds]
brendan has quit [Ping timeout: 246 seconds]
Pepe_ has joined #ocaml
brendan has joined #ocaml
thelema has joined #ocaml
ttamttam has joined #ocaml
sepp2k has joined #ocaml
<flux> ��.
<flux> (I wonder if anyone has a font that knows that character..)
<sgnb> flux: in hex?
<sgnb> lol
<flux> hm, I just realized I can write type foo = () in ocaml, and it apparently is the same as type foo = unit
<flux> is that some special rule?
larhat has joined #ocaml
<sgnb> it's not the same
<flux> what is it then?
<sgnb> I guess () is just parsed specially as a constructor
<flux> indeed it is
<sgnb> you can do e.g. type a = () | ::
<flux> so this won't work: let foo () = () type foo = ();; foo ();;
<flux> hm, I also had had this idea that :: couldn't be 'really' used as a constructor in user-written code, has it always been like that?
<sgnb> don't know
<sgnb> looks like a bad idea anyway
<flux> definitely :)
<flux> but it could be useful for opening those operators in a local scope
<flux> say, for dealing with lazy lists
<sgnb> note that constructors are not the same as infix operators
<sgnb> :: is parsed as a constructor, not an infix operator
<sgnb> i.e. (::) doesn't make sense
<sgnb> (an infix constructor)
avsm has joined #ocaml
lopex has joined #ocaml
surikator has joined #ocaml
avsm1 has joined #ocaml
drake01 has joined #ocaml
drake01 has quit [Max SendQ exceeded]
avsm has quit [Ping timeout: 245 seconds]
Cyanure has quit [Read error: Connection reset by peer]
f[x] has joined #ocaml
avsm has joined #ocaml
avsm1 has quit [Ping timeout: 258 seconds]
<adrien> I thought that select() was still usable with lwt (instead of libev)
<adrien> or am I wrong? I can't configure lwt on windows right now because of that
<adrien> it seems that it's possible to use select() instead of libev, at runtime, but not at compilation time; what's the purpose? it requires libev anyway
thomasga has quit [Quit: Leaving.]
edwin has joined #ocaml
edwin has quit [Remote host closed the connection]
edwin has joined #ocaml
<larhat> adrien: Dmitry Grebeniuk has pointed to patch http://overbld.hg.sourceforge.net/hgweb/overbld/overbld/raw-file/c37d9d347c45/src/lwt/patch/102_mingw__no_libev that allows you to build lwt w/o libev. and you can also use overbld (http://overbld.sourceforge.net/ ) distribution, that already contains patched version.
<diml> adrien: at runtime you can choose between libev and select, and select is used by default on windows
<adrien> larhat: I don't think I'd be able to use overbld right now but basically, I've stripped the corresponding code
<adrien> which is really ugly but which we'll do for now =/
<diml> i never thought it was a problem but i can add a --without-libev configure switch if you want
<adrien> diml: that'd be really great, yes
<diml> ok
<adrien> currently, adding any library on "windows" is a pain because having even 3 or 4 is unanageable (no package management for msys/mingw; only cygwin)
sepp2k1 has joined #ocaml
sepp2k has quit [Ping timeout: 258 seconds]
<adrien> diml: also, discover.ml mentions C_INCLUDE_PATH and LIBRARY_PATH in the help message when the discovery of a C library failed but it doesn't seem to ever use them
<diml> adrien: it is gcc which use them
<adrien> ok
thomasga has joined #ocaml
<diml> adrien: it is done, now you can configure lwt with --disable-libev
<flux> it would be great if ocaml on windows was one of those things 'just worked', but I guess we're still far off :)
avsm has quit [Quit: Leaving.]
<adrien> diml: ok, thanks, I'm currently facing another issue that has just popped up during the build; and ocamlbuild's error message don't really help
<adrien> I'll try your change as soon as I get my program to compile with lwt
<adrien> flux: it's actually not _that_ bad now
<diml> ok
<adrien> ah, might be my fault: leftover from libev
<adrien> flux: to be completely fair, I still have to copy various .o and .a files to ocamlbuild's _build/ directory for them to be found, because I slightly deviated from the blessed paths
<adrien> (meaning msys and mingw defaults, in C:/)
avsm has joined #ocaml
<flux> there should be a windows buildserver :)
snarkyboojum has joined #ocaml
<adrien> I want to make one, or rather: a test server (so that "eval" versions can be used)
<adrien> hah, lwt installed, let's try now
<adrien> diml: I've also seen a '#include <ev.h>' in "lwt_glib_stubs.c" which I only noticed because of the build failures
<diml> ah, yes, in fact it is not used since a long time. i remove it
<adrien> larhat: along with testing hopefully and more libs hopefully; and I have to say that I don't want to use binaries from a build-server when I cann
ftrvxmtrx has quit [Ping timeout: 252 seconds]
<flux> was that sentence cut off?
<adrien> s/cann/can/ and no
ftrvxmtrx has joined #ocaml
<adrien> maybe a gallicism however ;-)
<adrien> build server builds aren't really meant to be used
<adrien> but for that, I'll spend time on yypkg during the year
waern has joined #ocaml
waern_ has quit [Ping timeout: 240 seconds]
dnolen has joined #ocaml
as has joined #ocaml
avsm has quit [Quit: Leaving.]
ftrvxmtrx has quit [Read error: Operation timed out]
<adrien> well, lwt installed fine, I got it with lablgtk2, and the outcome is starting to look good
ftrvxmtrx has joined #ocaml
<flux> hmm, I would say debian/ubuntu/redhat/etc projects would disagree with that statement :)
<adrien> diml: Lwt_glib.install ~mode:`glib_into_lwt () seems to work btw; and the documentation isn't very explicit, why is one better than the other?
<adrien> flux: I meant: continuous integration servers, not build servers
<diml> adrien: it did not worked for me when i tried. glib_into_lwt is better on unix because it allow to use libev
<diml> glib uses poll on unix
<adrien> maybe because I'm using select() now?
<diml> when i tried i was also using select, but i got an error from the select implementation of OCaml on windows
<diml> it was GetFileType which failed
<diml> but maybe it is related to the windows version, i tried on Windows XP
jaar has joined #ocaml
<adrien> Windows 7 here
<adrien> going to try on windows xp sp0
<adrien> hmm, a bit later
<adrien> windows is really annoying
<adrien> currently, my biggest problem is that I want to have a glib callback which does something on the GUI, and the GUI should be updated before the callback returns (it's a long callback)
<diml> does the callback uses Lwt ? is it long because it does IO or for some other reason ?
<diml> actually if it uses Lwt you can just do something like ignore (...) and ... will continue after the callback returns
<adrien> the callback does IO+computations but does not directly use lwt; I had been under the impression that, after installing lwt_glib, all callbacks were ran as lwt threads, or am I wrong?
<adrien> hmmm, I'm doing this wrong: I'm going to have to change some code instead of trying to simply transposing it to lwt
<adrien> there are a few things which probably don't make sense
<diml> callbacks are run as usual after installing lwt_glib
<adrien> how do they magically stop blocking the main UI then? :o
<diml> basically if you execute something of type _ Lwt.t in a callback, it is just that it may terminate after the callback returns
avsm has joined #ocaml
<adrien> ahh, ok, I was really thinking that it was automatically creating a new thread for each callback
<flux> I think it's a good thing it doesn't automatically thread everything
<diml> that would require rewriting GTK with Lwt
<adrien> I remember some blocking UI which wasn't using threads and then, installing lwt magically made the callbacks not block the interface anymore
<adrien> and lwt with gtk could be nice :P
<diml> adrien: without changing the code, just by adding Lwt_glib.install ?
<adrien> diml: that's why I've called it "magic" ;-)
<adrien> also, I think it might be possible with what glib currently offers, but not with what lablgtk2 has
surikator has quit [Quit: Computer is sleeping. I'm probably not.]
rby has quit [Read error: No route to host]
rby has joined #ocaml
<adrien> I really wish I has started with lwt right away on yesterday ='(
<adrien> (meaning that now, with lwt, it works well :-) )
bobry has quit [Quit: Leaving.]
dnolen has quit [Quit: dnolen]
thomasga1 has joined #ocaml
thomasga has quit [Read error: Connection reset by peer]
oriba has joined #ocaml
as____ has joined #ocaml
as has quit [Ping timeout: 258 seconds]
as____ is now known as as
oriba has quit [Quit: oriba]
spearalot has joined #ocaml
eb4890 has joined #ocaml
lopex has quit []
ag4ve has quit [Ping timeout: 258 seconds]
Reaganomicon has quit [Read error: Connection reset by peer]
lamawithonel_ has quit [Ping timeout: 245 seconds]
lamawithonel_ has joined #ocaml
ag4ve has joined #ocaml
lamawithonel__ has joined #ocaml
lamawithonel_ has quit [Ping timeout: 245 seconds]
jaar has quit [Quit: Quitte]
avsm has quit [Quit: Leaving.]
jaar has joined #ocaml
lamawithonel__ has quit [Remote host closed the connection]
lamawithonel__ has joined #ocaml
agarwal1975 has joined #ocaml
hockpa2e has joined #ocaml
lamawithonel has joined #ocaml
lopex has joined #ocaml
The_third_man has joined #ocaml
lamawithonel__ has quit [Ping timeout: 260 seconds]
oriba has joined #ocaml
<hockpa2e> hi, compiling question: when I do "ocamlc -c treeanalyze.ml" it says "Unbound module ParseTree" even though I already compiled the module ParseTree and have parsetree.cmi and .cmo in the current directory. I tried adding "-I ." and also generating parsetree.mli, but nothing worked. Thanks.
<thelema> capitalization
<hockpa2e> the filenames have to be capitalized the same?
<thelema> "parsetree.cmi" corresponds to a module named "Parsetree", not "ParseTree"
<hockpa2e> oh. Thanks very much!
ankit9 has quit [Remote host closed the connection]
lamawithonel_ has joined #ocaml
mdelaney has joined #ocaml
lamawithonel has quit [Ping timeout: 245 seconds]
avsm has joined #ocaml
lamawithonel_ has quit [Ping timeout: 240 seconds]
larhat has quit [Quit: Leaving.]
joewilliams_away is now known as joewilliams
ulfdoz has joined #ocaml
BiDOrD_ has joined #ocaml
BiDOrD has quit [Ping timeout: 264 seconds]
surikator has joined #ocaml
avsm has quit [Quit: Leaving.]
junsuijin has joined #ocaml
ulfdoz has quit [Ping timeout: 246 seconds]
ttamttam has quit [Quit: ttamttam]
mdelaney has quit [Quit: mdelaney]
lopex has quit [Ping timeout: 258 seconds]
ulfdoz has joined #ocaml
lopex has joined #ocaml
ygrek has joined #ocaml
hockpa2e has left #ocaml []
oriba has quit [Remote host closed the connection]
mdelaney has joined #ocaml
bobry has joined #ocaml
Reaganomicon has joined #ocaml
ankit9 has joined #ocaml
ulfdoz has quit [Read error: Operation timed out]
ulfdoz has joined #ocaml
ztfw has joined #ocaml
ftrvxmtrx has quit [Quit: Leaving]
elehack has joined #ocaml
<elehack> thelema: I've got a fix for a bug in the optparse stuff; should it just go against master for inclusion in 1.5.x (in which case I'll put a backported version as a fix in the GODI package)
<elehack> or in a separate branch for a 1.4.2 bugfix release?
<adrien> hcarty: did you do anything with that possible fix for cairo_gtk so far?
<adrien> s/did you do/have you done/
* elehack might not include backported fix... custom git repo meets my needs, and evidently I'm the only one that uses this feature
lpereira has joined #ocaml
mdelaney has quit [Quit: mdelaney]
olauzon has joined #ocaml
mdelaney has joined #ocaml
ftrvxmtrx has joined #ocaml
spearalot has quit [Quit: Get MacIrssi - http://www.sysctl.co.uk/projects/macirssi/]
sebz has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
surikator has quit [Quit: Computer is sleeping. I'm probably not.]
agarwal1975 has quit [Quit: agarwal1975]
elehack has quit [Quit: Headed out, possibly to home]
sebz has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
pr has quit [Ping timeout: 260 seconds]
pr has joined #ocaml
pr has quit [Changing host]
pr has joined #ocaml
sebz has joined #ocaml
sebz has quit [Client Quit]
thomasga has joined #ocaml
thomasga1 has quit [Read error: Connection reset by peer]
sebz has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
surikator has joined #ocaml
drunK has joined #ocaml
eb4890 has quit [Read error: Operation timed out]
sebz has joined #ocaml
sebz has quit [Client Quit]
The_third_man has quit []
ulfdoz has quit [Ping timeout: 252 seconds]
The_third_man has joined #ocaml
Snark has quit [Quit: Quitte]
lpereira has quit [Quit: Leaving.]
sepp2k1 has quit [Ping timeout: 260 seconds]
edwin has quit [Remote host closed the connection]
ygrek has quit [Quit: Leaving]
mdelaney has quit [Ping timeout: 264 seconds]
thomasga has quit [Quit: Leaving.]
ztfw has quit [Remote host closed the connection]
sebz has joined #ocaml
surikator has quit [Quit: Computer is sleeping. I'm probably not.]
agarwal1975 has joined #ocaml
surikator has joined #ocaml
asmanur has joined #ocaml
asmanur_ has quit [Ping timeout: 252 seconds]
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
Amorphous has quit [Read error: Operation timed out]
lamawithonel_ has joined #ocaml
metasyntax has joined #ocaml
Amorphous has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
lamawithonel__ has joined #ocaml
agarwal1975_ has joined #ocaml
agarwal1975_ has quit [Client Quit]
lamawithonel_ has quit [Ping timeout: 245 seconds]
agarwal1975 has quit [Read error: Operation timed out]
mdelaney has joined #ocaml
lamawithonel has joined #ocaml
lamawithonel__ has quit [Remote host closed the connection]
lamawithonel has quit [Remote host closed the connection]
lamawithonel has joined #ocaml
sebz has joined #ocaml
lamawithonel_ has joined #ocaml
lamawithonel has quit [Ping timeout: 245 seconds]
lamawithonel_ has quit [Remote host closed the connection]
lamawithonel_ has joined #ocaml
olauzon has quit [Quit: olauzon]
<ousado> is there a tool that builds a callgraph from the AST of a program?
lamawithonel__ has joined #ocaml
oriba has joined #ocaml
<ousado> ..written in ocaml, of course :)
ikaros has quit [Quit: Ex-Chat]
lamawithonel_ has quit [Ping timeout: 245 seconds]
wtetzner has joined #ocaml
lamawithonel has joined #ocaml
oriba has left #ocaml []
lamawithonel__ has quit [Ping timeout: 245 seconds]
<thelema> ousado: not that I know.
lamawithonel_ has joined #ocaml
lamawithonel has quit [Ping timeout: 245 seconds]
lamawithonel__ has joined #ocaml
lamawithonel_ has quit [Ping timeout: 245 seconds]
<ousado> heh, I hoped to find code for that
lamawithonel has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
joewilliams is now known as joewilliams_away
sebz has joined #ocaml
lamawithonel__ has quit [Ping timeout: 245 seconds]
drunK has left #ocaml []
khia0 has joined #ocaml
khia0 has left #ocaml []
mjonsson has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
lamawithonel_ has joined #ocaml
arubin has joined #ocaml
lamawithonel has quit [Ping timeout: 245 seconds]