emmanuelux has quit [Remote host closed the connection]
ulfdoz has joined #ocaml
Cyanure has quit [Ping timeout: 255 seconds]
EmmanuelOga has quit [Quit: WeeChat 0.3.6-rc2]
zzz_ has quit [Remote host closed the connection]
everyonemines has joined #ocaml
sebz has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
arubin has quit [Quit: arubin]
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
zzz_ has joined #ocaml
sebz has quit [Client Quit]
dnolen has quit [Quit: dnolen]
alxbl has quit [Ping timeout: 245 seconds]
alxbl has joined #ocaml
sebz has joined #ocaml
alxbl has quit [Changing host]
alxbl has joined #ocaml
bobry has quit [Ping timeout: 260 seconds]
sebz has quit [Quit: Computer has gone to sleep.]
probst has joined #ocaml
Axioplase_ has joined #ocaml
bobry has joined #ocaml
probst has quit [Read error: Operation timed out]
everyonemines has quit [Quit: Leaving.]
sebz has joined #ocaml
sebz has quit [Client Quit]
sepp2k has quit [Remote host closed the connection]
sebz has joined #ocaml
zorun has quit [Read error: Connection reset by peer]
sebz has quit [Client Quit]
zorun has joined #ocaml
edwin has joined #ocaml
ygrek has joined #ocaml
hto has quit [Quit: Lost terminal]
hto has joined #ocaml
sebz has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
ttamttam has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
larhat has joined #ocaml
sebz has joined #ocaml
Cyanure has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
probst has joined #ocaml
ygrek has quit [Ping timeout: 248 seconds]
raichoo has joined #ocaml
probst has quit [Ping timeout: 260 seconds]
f[x] has joined #ocaml
ikaros has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
kerneis has joined #ocaml
kerneis has left #ocaml []
Boscop has quit [Ping timeout: 244 seconds]
probst has joined #ocaml
ikaros has joined #ocaml
_andre has joined #ocaml
ankit9 has joined #ocaml
thomasga has joined #ocaml
sebz has quit [Remote host closed the connection]
sebz has joined #ocaml
yezariaely has joined #ocaml
ikaros has quit [Remote host closed the connection]
<yezariaely>
what is the switch -dtypes needed for?
Associat0r has joined #ocaml
Associat0r has quit [Changing host]
Associat0r has joined #ocaml
<flux>
yezariaely, it produces .annot-files that are nice in emacs (and vim with some tool). they allow you to retrieve the type of a value under cursor by pressing C-c C-t
<yezariaely>
flux: hmm and what is the difference to -annot, then>
<yezariaely>
?
<flux>
yezariaely, nothing
<yezariaely>
ah ok, thank you!
<flux>
-dtypes camer first, but as -d -switches were created for debugging etc, I guess that particular switch got promoted into a 'regular' switch for everyone to use
sebz has quit [Quit: Computer has gone to sleep.]
ttamttam has quit [Quit: Leaving.]
ttamttam has joined #ocaml
<yezariaely>
flux: I expected something like that, however, as I could not find any docs in the official manpages and stuff, I was still confused. Maybe this could be written down somewhere (as deprecated)?
<flux>
well, maybe it's a hint that it's not documented :)
<flux>
I don't think any of the -d -switches are documented
<flux>
beyond a single line perhaps
<yezariaely>
my first guess for dtypes was dependant types …
<flux>
wishful thinking rather :)
<yezariaely>
hehe
<flux>
actually ocamlc -help says -dtypes (deprecated) same as -annot
<yezariaely>
oh?
<flux>
(3.11.2)
<yezariaely>
I was just looking in the man page :/
<flux>
should be fixed then perhaps
<flux>
file a bug :)
<flux>
my manual page doesn't even mention dtypes
<flux>
I guess that was your point
<flux>
but the 'only' place to learn about -dtypes is the ocamlc -help output, right?-)
<flux>
(..and old Makefiles..)
musically_ut has joined #ocaml
ikaros has joined #ocaml
avsm has joined #ocaml
avsm has quit [Client Quit]
avsm has joined #ocaml
ikaros has quit [*.net *.split]
_andre has quit [*.net *.split]
edwin has quit [*.net *.split]
agust1n has quit [*.net *.split]
Tianon has quit [*.net *.split]
dcolish has quit [*.net *.split]
rby has quit [*.net *.split]
shachaf has quit [*.net *.split]
diml has quit [*.net *.split]
bitbckt has quit [*.net *.split]
noj has quit [*.net *.split]
bitbckt has joined #ocaml
_andre has joined #ocaml
sgnb has quit [Read error: Connection reset by peer]
agust1n has joined #ocaml
rby has joined #ocaml
sgnb has joined #ocaml
shachaf has joined #ocaml
noj has joined #ocaml
ikaros has joined #ocaml
diml has joined #ocaml
edwin has joined #ocaml
<gildor>
is it me or forge.ocamlcore.org is down ?
<gildor>
probably a disk crash, the RAID is resyncinf
<gildor>
resyncing
<gildor>
(and it makes sense to get high loads when a RAID disk crash)
maufred has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
<yezariaely>
flux: yes, that was my point, and I filed a bug
milosn has quit [Ping timeout: 276 seconds]
hto has quit [Quit: Lost terminal]
hto has joined #ocaml
fabjan has joined #ocaml
hto has quit [Client Quit]
hto has joined #ocaml
oriba has joined #ocaml
ikaros has joined #ocaml
milosn has joined #ocaml
bitbckt has quit [Ping timeout: 240 seconds]
bitbckt has joined #ocaml
emmanuelux has joined #ocaml
milosn has quit [Ping timeout: 258 seconds]
_andre has quit [Quit: leaving]
thelema has quit [Remote host closed the connection]
_andre has joined #ocaml
bitbckt has quit [*.net *.split]
oriba has quit [*.net *.split]
Tianon has quit [*.net *.split]
sgnb has quit [*.net *.split]
rossberg has quit [*.net *.split]
Tobu has quit [*.net *.split]
fraggle_ has quit [*.net *.split]
pheredhel has quit [*.net *.split]
jlouis has quit [*.net *.split]
tlockney has quit [*.net *.split]
_habnabit has quit [*.net *.split]
rixed has quit [*.net *.split]
deavid has quit [*.net *.split]
peddie has quit [*.net *.split]
bnwr has quit [*.net *.split]
malouin has quit [*.net *.split]
zmoazeni has quit [Read error: Operation timed out]
george_z0rwell has joined #ocaml
joewilliams has quit [Excess Flood]
joewilliams has joined #ocaml
tlockney has joined #ocaml
haelix has quit [Read error: Operation timed out]
Pepe_ has quit [Read error: Operation timed out]
shachaf has quit [Read error: Connection reset by peer]
Qrntzz has quit [Ping timeout: 240 seconds]
nimred has quit [Ping timeout: 255 seconds]
ankit9 has quit [Ping timeout: 248 seconds]
wtetzner has quit [Ping timeout: 240 seconds]
shachaf_ has joined #ocaml
Qrntzz_ has joined #ocaml
The_third_bug has quit [Ping timeout: 260 seconds]
Qrntzz_ has quit [Changing host]
Qrntzz_ has joined #ocaml
Reaganomicon has quit [Read error: Connection reset by peer]
nimred has joined #ocaml
struktured has quit [Ping timeout: 258 seconds]
rgrinberg has quit [Ping timeout: 260 seconds]
ankit9 has joined #ocaml
g0dmoney- has quit [Ping timeout: 260 seconds]
Reaganomicon has joined #ocaml
zmoazeni has joined #ocaml
explodus has quit [Ping timeout: 260 seconds]
haelix has joined #ocaml
Pepe_ has joined #ocaml
g0dmoney- has joined #ocaml
pheredhel has joined #ocaml
george_z0rwell has quit [Read error: Connection reset by peer]
thelema has joined #ocaml
malouin has joined #ocaml
explodus has joined #ocaml
The_third_man has joined #ocaml
wtetzner has joined #ocaml
bitbckt has joined #ocaml
oriba has joined #ocaml
Tianon has joined #ocaml
sgnb has joined #ocaml
rossberg has joined #ocaml
peddie has joined #ocaml
Tobu has joined #ocaml
fraggle_ has joined #ocaml
jlouis has joined #ocaml
_habnabit has joined #ocaml
rixed has joined #ocaml
deavid has joined #ocaml
bnwr has joined #ocaml
caligula_ has joined #ocaml
caligula__ has quit [Ping timeout: 258 seconds]
bitbckt has quit [Ping timeout: 254 seconds]
struktured has joined #ocaml
g0dmoney- has quit [Changing host]
g0dmoney- has joined #ocaml
flux has quit [Read error: Connection reset by peer]
bitbckt has joined #ocaml
bitbckt has quit [Changing host]
bitbckt has joined #ocaml
flx has joined #ocaml
flx is now known as flux
sgnb has quit [Remote host closed the connection]
sgnb has joined #ocaml
Associ8or has joined #ocaml
Associ8or has quit [Changing host]
Associ8or has joined #ocaml
rwmjones has quit [Ping timeout: 252 seconds]
Associat0r has quit [Ping timeout: 260 seconds]
milosn has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
dnolen has joined #ocaml
dnolen has quit [Client Quit]
sebz has joined #ocaml
larhat has quit [Quit: Leaving.]
munga has joined #ocaml
<munga>
how can I convince ocmalbuild to generated the .dot dependency file of my library via ocamldoc ? I see an extension:dot flag in the ocamlbuild -documentation output but I can't figure out how to use it ... help ?
<thelema>
munga: ocmalbuild foo.dot?
<munga>
thelema, atm I generate my doc with ocamlbuild project.docdir/index.html ... what is foo for you ?
<munga>
I mean, I want a target to generate the .dot of all the modules in my odocl file ...
<thelema>
what's the odocl file called?
<thelema>
foo.odocl -> foo.dot, probably
sebz has quit [Quit: Computer has gone to sleep.]
<munga>
my odocl file is project.odocl and has Foo Bar Baz as listed modules . if I want to generate the html documentation my ocamlbuild target is project.docdir/index.html
<munga>
using project.dot does not work ...
<thelema>
project.docdir/index.dot?
<munga>
nope :)
<munga>
I've tried few targets along this line... maybe I've to write a specific target to generate ALL dot files at once ... anybody has tried this ?
<munga>
I've tried few targets along these lines... maybe I've to write a specific target to generate ALL dot files at once ... anybody has tried this ?
oriba has quit [Quit: oriba]
<f[x]>
munga, if you have q.odocl with modules in it then ocamlbuild q.docdir/anything.dot will produce _build/q.docdir/anything.dot
sepp2k has joined #ocaml
<f[x]>
with diagram for modules listed in the odocl
rwmjones has joined #ocaml
ftrvxmtrx has joined #ocaml
<munga>
Ahhh thanks ! it works !
<munga>
thelema, thanks as well ! your suggestion was indeed correct
ygrek has joined #ocaml
raichoo has quit [Quit: leaving]
Tianon has quit [Ping timeout: 240 seconds]
bzzbzz has joined #ocaml
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
tomprince has quit [Ping timeout: 240 seconds]
yezariaely has quit [Quit: Leaving.]
tomprince has joined #ocaml
ttamttam has quit [Ping timeout: 255 seconds]
metasyntax|work has joined #ocaml
bobry has quit [Ping timeout: 248 seconds]
struktured has quit [Quit: Konversation terminated!]
Boscop has joined #ocaml
struktured has joined #ocaml
bobry has joined #ocaml
ikaros has joined #ocaml
probst has quit [Quit: probst]
jonludlam_home has joined #ocaml
Cyanure has quit [Read error: Connection reset by peer]
<flux>
what that oreilly book doesn't cover is how to structure programs with Event
<albacker>
one of the writers is a prof in my university
<albacker>
s/one/two/
<flux>
the thing is that you can have loops like: let rec loop () = match Event.sync [Event.wrap (fun a -> `A a) (Event.receive a); Event.wrap (fun b -> `B b) (Event.receive b); Event.wrap (fun () -> `Stop) (Event.receive c)] with .. (* handle, recurse *)
Cyanure has joined #ocaml
<flux>
and creating new events based on other events is something you may want to do
<flux>
(albeit it's not that great given what the Event module has to offer)
<albacker>
so why are events useful?
<albacker>
comunication between threads?
<flux>
that's their main, and only, purpose
<flux>
actually Event is sort of annoying in that it's fully asynchronous
<flux>
and that's another problem that doesn't seem to have a clean solution when you don't have garbage collected threads
<flux>
but, if you like the style, you can use Lwt and my Lwtmsgqueue (or somesuch) which implements the ~same api for Lwt but in asynchronous manner. should publish it a little bit more than just having it as part of some git repository :)
<flux>
Lwt_msgqueue.select [Lwt_msgqueue.wrap (EventLb.line lb) (fun line -> `Line line);
<flux>
Lwt_msgqueue.receive responses] >>= function | `Line None -> ..
<flux>
so what it does it has a function to select the first available message from the following events
<flux>
the first is the event that indicates that the line buffer event module has received a new line
thomasga has quit [Client Quit]
<flux>
if it has, it converts it into `Line (line contents)
<flux>
the second is that it simply receives other responses. in this case the type of responses is local, so it is something like [Line of string | Response of response]
<flux>
then after it has received any message and it has mapped the message into something the rest of the code can handle in a uniform manner, it uses the Lwt's monadic binding operator >>= to decide what to do next
<albacker>
the .select is like a match for events?
<flux>
if it's a `Line None (oops, the type was actually `Line of (string option)), it exists
<flux>
well, not quite
<flux>
the match part is the 'function' keyword
<flux>
so it passes the rest of the code as a continuation to Lwt_msgqueue.select, or at least that's one way to think of it
<albacker>
val select : 'a event list -> 'a
<albacker>
``Synchronize'' on an alternative of events. select evl is shorthand for sync(choose evl).
<albacker>
I still don't get the ''synchronize'' part
<albacker>
i'll have to code something to really understand this.
<flux>
well, it converts an Event into a value
<flux>
so it needs to wait for something to be activateable
<flux>
note that with Event's synchronized approach writes are Events as well
<flux>
(or sends)
<flux>
so the message is only actually sent when the event is synchronized
<flux>
what is cool about the synchronous (this is the word I intended to use previously) is that you can have code like: Event.select [Event.receive incoming; Event.send outgoing "hello"]
<flux>
so it only does -one- of those
<flux>
if there's no messsage to be received and the outgoing buffer is not busy, a message will be sent
<flux>
btw, in the asynchronous version there is the chance that messages queued up into places and that can become something that looks like a memory leak. simply having one thread produce messages that are never consumed.
<flux>
in any case, I suggest playing around with it and building your own intuition on how it works. and then perhaps deciding if it's cool or not :)
<flux>
but I'll be going off to sleep at this point. happy hacking :).
avsm has quit [Quit: Leaving.]
<albacker>
thanks, i just fired up emacs :)
<albacker>
> deciding if it's cool or not
<albacker>
my professor already did
avsm has joined #ocaml
Cyanure has quit [Read error: Operation timed out]
fschwidom has joined #ocaml
ztfw has quit [Remote host closed the connection]
redfire has quit [Quit: leaving]
oriba has joined #ocaml
ttamttam has quit [Quit: Leaving.]
albacker has quit [Ping timeout: 248 seconds]
oriba has quit [Quit: oriba]
edwin has quit [Remote host closed the connection]
fschwidom has quit [Ping timeout: 276 seconds]
avsm has quit [Quit: Leaving.]
ulfdoz has quit [Ping timeout: 276 seconds]
ulfdoz has joined #ocaml
g0dmoney- has quit [Ping timeout: 255 seconds]
g0dmoney- has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
ikaros has joined #ocaml
ygrek has quit [Ping timeout: 248 seconds]
dgbaley27 has joined #ocaml
<dgbaley27>
I find myself doing "let _ = x in ..." a lot where x is really just (), for things like iterators. Is there a shortcut for this (probably looking a little more imperative)
Amorphous has quit [Ping timeout: 260 seconds]
ankit9 is now known as ankit9|zzz
g0dmoney- has quit [Read error: Operation timed out]
g0dmoney- has joined #ocaml
emmanuelux has quit [Quit: Ex-Chat]
g0dmoney- has quit [Changing host]
g0dmoney- has joined #ocaml
mjonsson has joined #ocaml
Amorphous has joined #ocaml
ulfdoz has quit [Ping timeout: 255 seconds]
ulfdoz has joined #ocaml
lopex has quit [Excess Flood]
lopex has joined #ocaml
jonludlam_home has quit [Remote host closed the connection]