<thelema>
orbitz: yes, looking forward to seeing that.
<orbitz>
thelema: semester is up may 8th
* thelema
wonders if ocaml could benefit fr GSoc
<thelema>
*from
seafood has joined #ocaml
<thelema>
I guess Jane Street's is pretty good
<elehack>
thelema, yeah, the year I applied it was a better deal than Google too.
<orbitz>
is jane st doing another/
<orbitz>
i wish we had more jane st's around
<thelema>
hmm, nothing about them since last may.
Amorphous has joined #ocaml
<orbitz>
dam too bad
seafood has quit [Quit: seafood]
<elehack>
I just pushed the OCamlBuild-enabled build to the ocamlbuild branch.
<elehack>
It doesn't build man pages, but ocamlbuild doesn't do that automatically (it could be added, though)
<elehack>
So far as I know, it does everything else (build lib & syntax extensions, install, build docs, install docs)
<elehack>
and there's a Makefile to control it all, so GODI packaging should now be a snap.
<thelema>
elehack: excellent. I'll give it a test
<elehack>
oh, it doesn't have test support yet. That shouldn't be too hard to add, though.
<elehack>
probably run the tests through the Makefile.
chenyu468 has joined #ocaml
seafood has joined #ocaml
seafood has quit [Ping timeout: 265 seconds]
pimmhogeling has quit [Ping timeout: 265 seconds]
enthymeme has quit [Quit: rcirc on GNU Emacs 23.1.1]
boscop has quit [Ping timeout: 258 seconds]
boscop has joined #ocaml
jeddhaberstro has quit [Quit: jeddhaberstro]
jeddhaberstro has joined #ocaml
yakischloba has quit [Quit: Leaving.]
drunK has quit [Remote host closed the connection]
alpounet has quit [Ping timeout: 245 seconds]
<thelema>
yay elehack
<thelema>
now how do we push to godi, so it's in the global database?
<elehack>
I don't know.
jeddhaberstro has quit [Quit: jeddhaberstro]
<thelema>
fair enough. there might be someone here that knows, or can help.
<elehack>
It might just be a matter of e-mailing the GODI mailing list.
<elehack>
I'll post a message there to see how we go about getting it in.
<elehack>
Do we want it as godi-aaa-batteries, or replacing the current godi-batteries package?
<thelema>
replace the current.
<elehack>
OK.
<elehack>
then the thing to do may be to e-mail the maintainer of that package directly.
<thelema>
that'd be yoric
<elehack>
ok.
<elehack>
The GODI community seems to operate around giving current maintainers first crack at updates, and only handing off when they choose to. So I think contacting him about it is the path to inclusion.
<thelema>
ah.
drk-sd has quit [Quit: foo]
ccasin has quit [Quit: Leaving]
Amorphous has quit [Ping timeout: 265 seconds]
<elehack>
Bummer... I just tried to take the Batteries version of my website engine live instead of the extlib code, and it blows up with a mutex failure.
<elehack>
It's in an Ocsigen-based app, so I don't have backtraces handy :(
<thelema>
batMutex uses "[Mutex] foo" for its messages
<thelema>
I guess it comes from Ocsigen
<elehack>
A grep for the message in the Batteries sources failed.
<thelema>
yup.
<elehack>
I'm suspecting either OCaml's Mutex or FreeBSD pthreads as the source. which sounds rather difficult to debug.
<elehack>
A grep in ocsigen's sources also fails.
<thelema>
sys error... raised by the ocaml runtime, I guess
<thelema>
otherlibs/unix/unix.mli: | EDEADLK (** Resource deadlock would occur *)
<elehack>
It looks like it corresponds to EDEADLK... error text matches that entry in FreeBSD's errno.h
<thelema>
in the ocaml source
<elehack>
A test run of the server on my Ubuntu laptop succeeded.
<thelema>
well, good luck with that one.
<elehack>
I'll keep the issue updated as I try to figure it out.
Amorphous has joined #ocaml
derdon has quit [Ping timeout: 252 seconds]
<elehack>
yay, the test suite throws the error!
<thelema>
the testsuite for batteries?
<elehack>
yes
<elehack>
it's at line 55
<elehack>
of batRMutex.ml
<thelema>
hmm, interesting. for lock_either
<thelema>
this shouldn't be able to deadlock
<thelema>
well, good night.
<elehack>
g'night. I probably won't get back to this until sometime next week, but hopefully we can fix it before I no longer have a FreeBSD machine in a month or so.
elehack has quit [Quit: Goodbye...]
maskd has quit [Quit: leaving]
yakischloba has joined #ocaml
dark has quit [Read error: Connection reset by peer]
<Associat0r>
guys what convention do you use for when to annotate types?
<orbitz>
what do you mean?
<Associat0r>
like where do you use type annotations, even when it can be inferred
struktured has quit [Ping timeout: 240 seconds]
Shoggoth has joined #ocaml
<orbitz>
generally only toplevel definitions
alpounet has joined #ocaml
ztfw` has joined #ocaml
seafood has joined #ocaml
ztfw has quit [Read error: Connection reset by peer]
alpounet has quit [Ping timeout: 265 seconds]
aavogt has joined #ocaml
ygrek has joined #ocaml
alpounet has joined #ocaml
seafood has quit [Quit: seafood]
alpounet has quit [Ping timeout: 265 seconds]
ftrvxmtrx has quit [Ping timeout: 264 seconds]
ftrvxmtrx has joined #ocaml
yakischloba has quit [Quit: Leaving.]
ttamttam has joined #ocaml
Yoric has joined #ocaml
seafood has joined #ocaml
ttamttam has quit [Quit: Leaving.]
ftrvxmtrx has quit [Quit: Leaving]
Yoric has quit [Quit: Yoric]
seafood has quit [Client Quit]
Yoric has joined #ocaml
caligula__ has quit [Read error: Connection reset by peer]
Yoric has quit [Client Quit]
caligula__ has joined #ocaml
alpounet has joined #ocaml
krankkatze has joined #ocaml
krankkat` has joined #ocaml
alpounet has quit [Read error: Connection reset by peer]
krankkatze has quit [Ping timeout: 240 seconds]
alpounet has joined #ocaml
ztfw` has left #ocaml []
ztfw has joined #ocaml
pimmhogeling has joined #ocaml
slash_ has joined #ocaml
lvillani has joined #ocaml
pimmhogeling has quit [Read error: Connection reset by peer]
<Camarade_Tux>
btw, deltree doesn't exist in recent windows versions (can't remember exactly who was mentionning it)
_unK has joined #ocaml
ttamttam has joined #ocaml
chenyu468 has quit []
ikaros has joined #ocaml
maskd has joined #ocaml
sepp2k has joined #ocaml
Narrenschiff has joined #ocaml
slash_ has quit [Read error: Connection reset by peer]
<mfp>
"you can't load .cmo from it so you have to quit and relaunch with the .cmos as arguments"
ulfdoz has joined #ocaml
Drk-Sd has quit [Quit: {'EXIT', Drk-Sd, "bye"}]
drk-sd has joined #ocaml
<thelema>
Associat0r: I use type declarations as sparingly as possible.
Anarchos has joined #ocaml
john4lists has joined #ocaml
sepp2k1 has joined #ocaml
sepp2k has quit [Ping timeout: 265 seconds]
john4lists has left #ocaml []
ikaros has quit [Quit: Leave the magic to Houdini]
ygrek has quit [Remote host closed the connection]
john4lists has joined #ocaml
ygrek has joined #ocaml
Narrenschiff has quit [Quit: Narrenschiff]
M| has quit [Ping timeout: 276 seconds]
<maskd>
mfp: to be fair on him, this stuff could really be better documented
seafood has quit [Quit: seafood]
M| has joined #ocaml
<Camarade_Tux>
hmmm, some students in France get completely traumatized by ocaml ;-)
alpounet has quit [Ping timeout: 246 seconds]
bluestorm has joined #ocaml
alpounet has joined #ocaml
lvillani has quit [Quit: Leaving]
lvillani has joined #ocaml
ygrek has quit [Quit: Leaving]
<Anarchos>
Camarade_Tux like me , first classe to begin with in 1995 :)
_zack has joined #ocaml
_zack has quit [Client Quit]
ikaros has joined #ocaml
ikaros has quit [Client Quit]
struktured has joined #ocaml
ikaros has joined #ocaml
derdon has joined #ocaml
<flux>
mfp, well, if the interface has changed, doesn't that hold true?
<mfp>
true, but he wasn't referring to that
Yoric has quit [Ping timeout: 248 seconds]
krankkat` has left #ocaml []
<Anarchos>
how to debug GC related segment fault ?
<flux>
I've used adding calls to Gc.full_major () at suspicious places
<flux>
(with tracing)
<Anarchos>
flux my values are allocated by a multithreaded C++ api ...
ccasin has joined #ocaml
<flux>
..
<Anarchos>
flux well if i add register_global_root to each value, it works perfectly as a multithreaded program !
<Anarchos>
flux how to trace caml_oldify_one ? variables name are not really explicit in it
<thelema>
sounds like you need to do that everywhere
<flux>
anarchos, I was thinking like: let debug label = Printf.printf "Begin at %s\n%!" label; Gc.compact (); Printf.printf "Gc done\n%!" ... debug "before suspicious"; suspcious_code (); debug "after suspicious" etc
dark has joined #ocaml
krankkatze has joined #ocaml
<Anarchos>
flux well i suspect that one thread calls the gc and then sweep values associated to another thread.
<Anarchos>
flux that is why i declared all as global_root in a first time
<flux>
anarchos, try to make sure that 1) ocaml code always runs in at most one thread 2) ocaml has a way to find the live data from the roots 3) cautious use of 'nomalloc' 4) cautious releasing of global lock
<Anarchos>
flux 1) ocaml runs in multiple thread, but i added a global semaphore in enter/release_blocking_section 2) don't know how to achieve 3) no noalloc 4) see 2
yakischloba has joined #ocaml
<Anarchos>
flux for 2) i thought that declaring all my values as global was enough
<Anarchos>
flux i thought to add a thread_id in the values , to let gc only sweep values from the thread it was called from
smimou has joined #ocaml
<bluestorm>
you're trying to be too clever
<Anarchos>
bluestorm why ?
brooksbp has joined #ocaml
bluestorm has quit [Ping timeout: 260 seconds]
<aavogt>
is there a "compare" function that's more friendly to the pattern completeness checker, or is this something I have to write?
<thelema>
aavogt: what do you mean by this?
<thelema>
Pervasives.compare is very nice.
<aavogt>
I mean this gives warnings when it doesn't have to: match compare x y with; -1 | 0 | 1 -> ...
fschwidom has joined #ocaml
* aavogt
looks into this pervasives module
<Camarade_Tux>
Pervasives is the module that is opened by default (like if there was 'open Pervasives' at the top of each file)
<thelema>
match compare x y with -1 | 0 | _ -> ...
<aavogt>
hmm, I'm not sure that generalizes to when you "match (compare a b,compare c d)"
<flux>
doesn't it?
<thelema>
aavogt: just replace any of -1, 0, or 1 with _ (but only one, and only the last)
<thelema>
match compare a b, compare c d with -1,-1 | -1,0 | -1,_ | 0,-1 | 0,0 | 0,_ | _,-1 | _,0 | _,_ ->
<flux>
btw, the documentation for compare doesn't say -1, 0, and 1
<flux>
it says negative, 0 or positive
<thelema>
yes, a design flaw.
<flux>
if you want to take advantage of the coverage checking, you can just have type lt_eq_gt = Lt | Eq | Gt let lt_gt_eq = function x when x < 0 -> Lt | 0 -> Eq | _ -> Gt and use that
<flux>
it will most likely be slightly slower though. and more tedious I guess.
* thelema
agrees
<flux>
on the other hand the specification allows for implementation b - a when overflow is not an issue
<flux>
which seems nice practically-oriented approach :)
<thelema>
<cough>dirty hack</cough>
thrasibule has quit [Ping timeout: 276 seconds]
ftrvxmtrx has joined #ocaml
jeddhaberstro has joined #ocaml
thrasibule has joined #ocaml
yakischloba has quit [Quit: Leaving.]
ulfdoz has quit [Ping timeout: 245 seconds]
smimou has quit [Ping timeout: 276 seconds]
struktured has quit [Read error: Operation timed out]
struktured has joined #ocaml
lokydor has joined #ocaml
lokydor has quit [Remote host closed the connection]
Yoric has joined #ocaml
smimou has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
yakischloba has joined #ocaml
ulfdoz has joined #ocaml
smimou has quit [Ping timeout: 246 seconds]
M| has quit [Quit: leaving]
drunK has joined #ocaml
_unK has quit [Ping timeout: 276 seconds]
drunK is now known as _unK
inkbottle has joined #ocaml
inkbottle has left #ocaml []
M| has joined #ocaml
lokydor has joined #ocaml
enthymeme has joined #ocaml
ttamttam has quit [Quit: Leaving.]
lokydor has quit [Ping timeout: 240 seconds]
Yoric has quit [Quit: Yoric]
Camarade_Tux has quit [Ping timeout: 264 seconds]
Asmadeus has quit [Ping timeout: 276 seconds]
struktured has quit [Ping timeout: 248 seconds]
Camarade_Tux has joined #ocaml
mutewit has joined #ocaml
Camarade1Tux has joined #ocaml
Asmadeus has joined #ocaml
sepp2k1 has quit [Quit: Leaving.]
lvillani has quit [Quit: Leaving]
sepp2k has joined #ocaml
sepp2k has quit [Quit: Leaving.]
boscop has quit []
seafood has joined #ocaml
derdon has quit [Ping timeout: 276 seconds]
javax_ has quit [Read error: Connection reset by peer]
javax has joined #ocaml
Camarade_Tux has quit [Quit: leaving]
_unK has quit [Remote host closed the connection]
Camarade1Tux is now known as Camarade_Tux
seafood has quit [Ping timeout: 245 seconds]
ztfw has quit [Read error: Operation timed out]
slash_ has quit [Quit: Lost terminal]
ztfw has joined #ocaml
ikaros has quit [Quit: Leave the magic to Houdini]
komar_ has quit [Quit: WeeChat 0.2.6]
krankkatze has quit [Remote host closed the connection]
jeddhaberstro has quit [Read error: Connection reset by peer]
jeddhaberstro has joined #ocaml
halfie has joined #ocaml
<halfie>
Hi, I am getting an exception while doing let x = int_of_string "1073741829";;
<halfie>
does unsignedinot_of_string operation operation exist ?
<mfp>
haelix: are you using a 32-bit OCaml? 1073741829 doesn't fit in 31-bit integers...