<surikator>
hcarty: yes, i'm aware of ocamlnet for general network stuff. i was looking for something more specific. thanks a lot!
ikaros has quit [Quit: Leave the magic to Houdini]
<surikator>
i'm looking into building a P2P network for distributed computation (for some simple calculations). does anyone have a view on whether JoCaml could be used for building a simple P2P environment for these purposes?
rwmjones has quit [Read error: Operation timed out]
tauntaun has quit [Ping timeout: 240 seconds]
rwmjones has joined #ocaml
tauntaun has joined #ocaml
jonathandav has joined #ocaml
mo3b1us has joined #ocaml
Oejet has quit [Ping timeout: 276 seconds]
lopex has joined #ocaml
er98052 has joined #ocaml
jonathandav has quit [Ping timeout: 260 seconds]
sepp2k has quit [Quit: Leaving.]
seafood has joined #ocaml
jonathandav has joined #ocaml
ulfdoz_ has joined #ocaml
ulfdoz has quit [Ping timeout: 276 seconds]
ulfdoz_ is now known as ulfdoz
mo3b1us has quit [Quit: leaving]
haelix_ has joined #ocaml
willb1 has joined #ocaml
willb has quit [*.net *.split]
haelix has quit [*.net *.split]
willb1 has quit [Quit: Leaving]
willb1 has joined #ocaml
willb1 is now known as willb
willb has quit [Read error: Connection reset by peer]
willb1 has joined #ocaml
willb1 is now known as willb
<philtor>
surikator: you should take a look at the ZeroMQ bindings for OCaml (they're pretty new)
alexyk has quit [Read error: Connection reset by peer]
alexyk has joined #ocaml
er98052 has quit [Quit: er98052]
alexyk has quit [Read error: Connection reset by peer]
seafood has joined #ocaml
alexyk has joined #ocaml
lopex has quit [Ping timeout: 240 seconds]
seafood has quit [Quit: seafood]
tauntaun has quit [Quit: Ex-Chat]
alexyk has quit [Read error: Connection reset by peer]
er98052 has joined #ocaml
alexyk has joined #ocaml
alexyk has quit [Read error: Connection reset by peer]
alexyk has joined #ocaml
alexyk has quit [Read error: Connection reset by peer]
alexyk has joined #ocaml
alexyk has quit [Read error: Connection reset by peer]
alexyk has joined #ocaml
er98052 has quit [Quit: er98052]
alexyk has quit [Read error: Connection reset by peer]
vivanov has joined #ocaml
arubin has quit [Quit: arubin]
vivanov has quit [Quit: Lost terminal]
eye-scuzzy has quit [Quit: leaving]
eye-scuzzy has joined #ocaml
enthymeme has quit [Quit: rcirc on GNU Emacs 23.1.1]
joewilliams is now known as joewilliams_away
joewilliams_away is now known as joewilliams
philtor has quit [Ping timeout: 255 seconds]
fraggle_ has quit [Ping timeout: 276 seconds]
surikator has quit [Quit: surikator]
dnolen has joined #ocaml
joewilliams is now known as joewilliams_away
fraggle_ has joined #ocaml
dnolen has quit [Quit: dnolen]
vivanov has joined #ocaml
Oejet has joined #ocaml
Cyanure has joined #ocaml
edwin has joined #ocaml
vivanov has quit [Ping timeout: 246 seconds]
larhat has joined #ocaml
mo3b1us has joined #ocaml
boscop has joined #ocaml
mo3b1us has quit [Quit: leaving]
Yoric has joined #ocaml
ikaros has joined #ocaml
ulfdoz has quit [Read error: Operation timed out]
ulfdoz has joined #ocaml
avsm has quit [Quit: Leaving.]
sepp2k has joined #ocaml
sepp2k1 has joined #ocaml
sepp2k has quit [Ping timeout: 255 seconds]
niooins has joined #ocaml
niooins has left #ocaml []
mnabil has joined #ocaml
kaustuv has joined #ocaml
bbc has joined #ocaml
schmx is now known as schmrkc
bbc has quit [Quit: leaving]
alexyk has joined #ocaml
alexyk has quit [Read error: Connection reset by peer]
alexyk has joined #ocaml
alexyk has quit [Read error: Connection reset by peer]
Kakadu has joined #ocaml
alexyk has joined #ocaml
alexyk has quit [Read error: Connection reset by peer]
tauntaun has joined #ocaml
alexyk has joined #ocaml
alexyk has quit [Read error: Connection reset by peer]
haelix_ is now known as haelix
surikator has joined #ocaml
surikator has quit [Quit: surikator]
Kakadu has quit [Ping timeout: 245 seconds]
waern has quit [Ping timeout: 248 seconds]
oriba has joined #ocaml
<oriba>
hello. when I use an exception in a compilation unit... I can use it with or without mentioning it in the according *.mli file
<oriba>
when to write it into the mli file?
<oriba>
does it make sense to have it in the mli-file as information for the user, or do only those exceptions go into the mli file that the user of that module also must be able to raise?
<oriba>
So: for module internal use: not writing the exception into the mli file?
<mrvn>
he needs those infos to catch it too
<mrvn>
If the exception is purely internal then skip it. If any of your public functions throw it then declare it.
arubin has joined #ocaml
<oriba>
mrvn, ah, ok... yes I tried it: can't catch without the exc. in the mli-file.... hmhh, yes this is logical :)
<oriba>
mrvn, what do you mean with "skip it"?
<oriba>
that I do not mention it in the mli-file?
<oriba>
theit would be a non-catchable exception?
<oriba>
something like so fatal exc., that it never shopuld be able to be caught
<oriba>
...or never should occur outside?
<oriba>
...or even when caught can#t be handled?
<oriba>
something like semantic problem in the code, that therefore could neverb be handlöed?
<oriba>
like a kerne panic? ;)
<oriba>
or abort?
<oriba>
...then it could be used as something that shows that there is a structural probblem in the code
<oriba>
like enhancing tests (similar to a type-check)
<oriba>
??
<mrvn>
if you throw it then mention it.
<oriba>
hmhh
<mrvn>
Only reason not to mention it is when you already catch it inside the module.
<oriba>
even if it is not posisble to handle it?
<oriba>
OK.
<oriba>
thanks for the hint
<mrvn>
If it is impossible to handle then rewrite your code. That makes a verry poor module.
<oriba>
aha
<oriba>
ok
<oriba>
but it could be not be possible to handle because its driven by uer input
<oriba>
hmhh
<mrvn>
But the only way I can imagine something being truely unable to be handled is if it corrupts memory or something equally evil.
<oriba>
but then handling would mean mention it to the user
<oriba>
ok
<mrvn>
Think wether you could use an option type as return value instead of an exception. If that makes sense then the exception is certainly handable.
<mrvn>
Like List.mem l e could return None | Some x instead of throwing Not_found.
<mrvn>
.oO(I think I ment List.find)
<oriba>
hmhhh
mnabil has quit [Remote host closed the connection]
<oriba>
if the input is hard coded and the exception comes from wrong input values, then 'a option would not make sense
<oriba>
so maybe it really makes sense NOT to mention the exception in the mli
<oriba>
but if it would be driven by user, exception would make sense
<oriba>
so maybe in my case it make sense to throw the exception, but not mention it
<oriba>
if I later have the combination of values driven by a user, this might better be caught and then mentioned to the user
<oriba>
so... both thought together, if the module should become more general than in my current app, then again I would think the exception should be in the mli file
jm_ has joined #ocaml
dnolen has joined #ocaml
ymasory has joined #ocaml
elehack has joined #ocaml
dnolen has quit [Quit: dnolen]
elehack has quit [Ping timeout: 252 seconds]
elehack has joined #ocaml
ikaros_ has joined #ocaml
Julien_T has quit [Ping timeout: 276 seconds]
elehack has quit [Ping timeout: 250 seconds]
Julien_T has joined #ocaml
joewilliams_away is now known as joewilliams
alexyk has joined #ocaml
mo3b1us has joined #ocaml
BiDOrD_ has quit [Remote host closed the connection]
larhat has quit [Quit: Leaving.]
alexyk has quit [Read error: Connection reset by peer]
BiDOrD has joined #ocaml
alexyk has joined #ocaml
mo3b1us has quit [Quit: leaving]
philtor has joined #ocaml
smerz has joined #ocaml
alexyk has quit [Read error: Connection reset by peer]
fraggle_ has quit [Quit: -ENOBRAIN]
boscop has quit [Ping timeout: 255 seconds]
ftrvxmtrx_ has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 260 seconds]
Yoric has quit [Quit: Yoric]
BiDOrD has quit [Read error: Operation timed out]
philtor has quit [Ping timeout: 255 seconds]
dnolen has joined #ocaml
tauntaun has quit [Quit: Ex-Chat]
BiDOrD has joined #ocaml
Cyanure has quit [Read error: Operation timed out]
mo3b1us has joined #ocaml
alexyk has joined #ocaml
fraggle_ has joined #ocaml
<alexyk>
is there a List.scanf equivalent to List.print, to parse "1;2;3;4" into a list?
<alexyk>
adrien: Batteries is the de-facto stdlib now, no?
<adrien>
hahaha :P
<alexyk>
I mean, there's no reason not to use Batteries except for stubbornness, laziness, or backwardness :)
<gildor>
alexyk: there is janest-core which is another very good stdlib
<alexyk>
gildor: right.
<alexyk>
gildor: but you can't entrust stdlib to one company
<alexyk>
if the Chinese sell 1 trillion dollars tomorrow, there will be nly Batteries
<alexyk>
only
<gildor>
alexyk: hopefully, janest-core is OSS
<alexyk>
of course humanity will go back to abacus anyways
<alexyk>
gildor: right, but the question is, who will really support it outside
<alexyk>
while thelema can be counted on as the sun and the moon!
<gildor>
same question can stand on the long term for any OSS (including batteries)
<alexyk>
gildor: see above :)
<gildor>
alexyk: not sure to see what "above" means
<alexyk>
that thelema is as reliable as the sun and ocaml itself :)
<alexyk>
proven by experience
<alexyk>
thelema: String.nsplit still returns string list, so I have to run List.map int_of_string after that
ygrek has joined #ocaml
<alexyk>
is there a library function like: let constantly x y = x
oriba_ has joined #ocaml
oriba has quit [Ping timeout: 276 seconds]
<mrvn>
Isn't there an split + iter/fold function
<mrvn>
String.split_fold : string -> string -> 'a -> ('a -> string -> 'a) -> 'a
<mrvn>
= fun str sep init fn
alexyk has quit [Quit: alexyk]
alexyk has joined #ocaml
<adrien>
oh, just stumbled on ocamlnet's Netaux.KMP: has make_pattern and find_pattern, it's supposed to be an internal module however
arubin has quit [Quit: arubin]
surikator has joined #ocaml
joewilliams is now known as joewilliams_away
mo3b1us has quit [Quit: leaving]
lopex has joined #ocaml
Cyanure has quit [Remote host closed the connection]
<surikator>
hi guys! i'm trying to install ocaml-zmq (bindings for ZeroMQ). The file [stubs-zmq.c] has "#include <caml/threads.h>" and during installation I get the error "caml/threads.h: No such file or directory". Which threads.h library is this? Thanks for any help!
ygrek has quit [Remote host closed the connection]
surikator_ has joined #ocaml
surikator_ has left #ocaml []
surikator has quit [Quit: surikator]
surikator has joined #ocaml
avsm has joined #ocaml
surikator has quit [Client Quit]
tauntaun has joined #ocaml
edwin has quit [Remote host closed the connection]
surikator has joined #ocaml
chicco has quit [Read error: Connection reset by peer]
surikator has quit [Quit: surikator]
alexyk has quit [Quit: alexyk]
Edward has joined #ocaml
Amorphous has quit [Read error: Connection reset by peer]
Yoric has joined #ocaml
surikator has joined #ocaml
trigen` has quit [Ping timeout: 240 seconds]
trigen has joined #ocaml
dnolen has quit [Quit: dnolen]
Amorphous has joined #ocaml
<jm_>
I am having problems with the compare function (coming from SML).
<jm_>
The standard library defines as part of the Set.S type: val compare: ('a -> 'a -> int) -> 'a t -> 'a t -> int.
<jm_>
But when I apply the Set.Make(T) functor, magically, a val compare : t -> t -> int appears. Why is that?
<jm_>
Whoops. I was looking at the wrong file. The first signature is from the map module type...