smerz has quit [Remote host closed the connection]
avsm has quit [Quit: Leaving.]
cdidd has joined #ocaml
lihaitao has joined #ocaml
mrvn has quit [Ping timeout: 245 seconds]
mrvn has joined #ocaml
Tianon has quit [Ping timeout: 245 seconds]
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
emmanuelux has quit [Read error: Connection reset by peer]
ulfdoz has quit [Ping timeout: 265 seconds]
ankit9 has joined #ocaml
BiDOrD has joined #ocaml
ankit9 has quit [Quit: Leaving]
BiDOrD has quit [Ping timeout: 240 seconds]
pango is now known as pangoafk
Submarine has joined #ocaml
BiDOrD has joined #ocaml
eikke has joined #ocaml
cago has joined #ocaml
Submarine has quit [Ping timeout: 244 seconds]
djcoin has joined #ocaml
ftrvxmtrx has joined #ocaml
thomasga has joined #ocaml
ankit9 has joined #ocaml
Snark has joined #ocaml
Kakadu has joined #ocaml
avsm has joined #ocaml
rossberg has joined #ocaml
jakobro has joined #ocaml
arquebus has joined #ocaml
avsm has quit [Quit: Leaving.]
avsm has joined #ocaml
rwmjones has joined #ocaml
arquebus has quit [Remote host closed the connection]
xlq has joined #ocaml
jakobro has quit [Quit: leaving]
yezariaely has joined #ocaml
<yezariaely>
in the ocaml toplevel: is there a command to clear all of its memory? (I had some problems with #use that old definitions where - of course - still there)
<yezariaely>
(other than #quit;; ;-))
<flux>
yezariaely, hmm, there might be a trick involving the Toplevel-module. if not, perhaps enhtop or utop come with a builtin trick.
<pippijn>
I think it would be trivial to implement that "#clear" command
<yezariaely>
already on my todo list for this evening ;-)
<pippijn>
if the toplevel is implemented the way I think it is
<flux>
pippijn, but, one might not want that either
<flux>
what would be useful to have return the state to some previous one
<flux>
some state for example after loading batteries and ocamlfind, for example
<pippijn>
that would require a little more change, but would also be possible
<mrvn>
ctrl-d<pg-up><ret> :)
<yezariaely>
flux: #clear returns to a previous state. the very first one :-p
<pippijn>
#snapshot
<diml>
you can play with Toploop.toplevel_env
<flux>
ah, Toploop, I was searching for Toplevel..
<flux>
this is probably relevant: val toplevel_env : Env.t ref
<flux>
and perhaps: val initialize_toplevel_env : unit -> unit
<flux>
yep, Toploop.initialize_toplevel_env () seems to clear at least something :)
<yezariaely>
tx
<yezariaely>
thx
_andre has joined #ocaml
Tobu has quit [Ping timeout: 272 seconds]
cyphase has quit [Ping timeout: 240 seconds]
thelema_ has joined #ocaml
thelema has quit [Read error: Connection reset by peer]
iago has joined #ocaml
cyphase has joined #ocaml
Tobu has joined #ocaml
cyphase has quit [Read error: Connection reset by peer]
Submarine has joined #ocaml
kaustuv has joined #ocaml
<adrien>
when I write ocamldoc comments in vim, it always wraps my text which is over 80 chars
<xlq>
:set tw=0
<zorun>
or switch to emacs :)
<adrien>
the issue is that it adds a "*" at the beginning of the new lines and this "*" appears in ocamldoc's output; has anyone solved that?
<xlq>
:help fo
<xlq>
err
<xlq>
:help formatoptions
<kaustuv>
ocamldoc -stars
<adrien>
kaustuv: ah, thanks, that should do it :-)
<adrien>
xlq: thanks too; I didn't know about that, it's pretty interesting and I'll probably change my vimrc a bit =)
<adrien>
zorun: NEVER! :P
<adrien>
(it hurts my fingers)
<xlq>
C-x C-crunch M-pain
<kaustuv>
setxkbmap -option ctrl:nocaps
<xlq>
Oh? Does that set caps lock as control?
<xlq>
I fiddled with xmodmap for that :-\
<adrien>
I can't do the required gymnastic
<mrvn>
you might not believe it but I've managed to close my xemacs by accident a few times
<kaustuv>
"xemacs" <-- there's your problem
<mrvn>
C-x C-c is too easy to hit
<adrien>
:x in emacs too (instead of :w, on azerty keyboards)
<mrvn>
and I hate that C-w is close window in firefox instead of cut text
<adrien>
same :-)
<adrien>
I've lost a few things in text fields because of that
<flux>
ctrl-alt-t
<flux>
this will blow your mind!
<adrien>
what does it do?
<flux>
although I suppose it might not always restore text fields if there's javascript hackery involved?
<flux>
it undoes a tab closing
<mrvn>
doesn't work often
<adrien>
I've used Ctrl+Shift+t in firefox/seamonkey to reopen tabs but that almost never gives me the text bac
<adrien>
k
<kaustuv>
ITYM ctrl *shift* t
<kaustuv>
unless it's platform-specific
<kaustuv>
(also doesn't work on the last tab)
<adrien>
but imho it's pointless to give it back in the field; just provide a way to access what has been typed
snearch has joined #ocaml
iago has quit [Ping timeout: 248 seconds]
cyphase has joined #ocaml
iago has joined #ocaml
ankit9 has quit [Ping timeout: 246 seconds]
<kaustuv>
adrien: re your recent caml-list post, is it because the string was moved by the gc which doesn't update the pointers in the ld-produced wrapper?
<adrien>
kaustuv: the string shouldn't be an ocaml-string
<adrien>
the function has both ocaml-arguments and other ones; could that be an issue?
<adrien>
hmmm, I think I forgot to mention something in that email
<adrien>
right, I didn't say I had tried to make the function like an ocaml-callable C function and got the exact same issue
<kaustuv>
OK, I guess I don't immediately see the problem in your link.ml
<kaustuv>
Can you add the "initializing ..." string in the __wrap_caml%s_value function itself? That way you can be sure that the corruption happens in the real_entry() itself
<kaustuv>
s/add/pring/
<adrien>
thanks for having taken a look :-)
<kaustuv>
err, print
<adrien>
that's a good idea, I'll try it in a few minutes
<kaustuv>
although I guess since only the "done initializing" strings are corrupted that is pretty much guaranteed to be the case
lihaitao has quit [Quit: Ex-Chat]
<adrien>
I also need to make the string pointer constant and try to have it put in a read-only section of the executable so that modifying it crashes (and I'll know what modifies it I hope)
<kaustuv>
why not inline mod_wrap inside the __wrap_caml%s_entry functions and not use string variables to hold the names at all?
<adrien>
I'm currently using it to time initialization of hundreds of modules; otoh it's true this is generated code and that could remove some issue so it's worth a try
<kaustuv>
are you sure that these silly strings are not there in MODULES itself?
<adrien>
once the executable has been generated, MODULES doesn't play any role so it shouldn't impact anything at runtime
<adrien>
I've checked the addresses of the module_name string and it changes after the module initialization (used printf's %p argument for that)
testcocoon has quit [Quit: Coyote finally caught me]
<adrien>
some addresses were close to the original and some became 0x7fff...
<kaustuv>
can you also print the addresses to the various entry functions also? Maybe some of the functions are being relocated by the gc?
<kaustuv>
but this problem is above my pay grade. Maybe one of the GC implementers will respond to your post.
BeastCaml has joined #ocaml
testcocoon has joined #ocaml
<adrien>
I'm thinking that there might be some serious constraints around there (the code calling the initialization functions is written in asm
<adrien>
it's not something people tend to play with everyday ;-)
<BeastCaml>
hi, who can help me to implant Karnaugh in OCaml please ?
<adrien>
(I mean, the early startup of ocaml, not asm)
<BeastCaml>
help me !!! (ノ^_^)ノ┻━┻
<kaustuv>
Does your code run correctly otherwise? If so, just pring the "("^name at entry, followed by timestamp, then timestamp^")" at exot. amd then do some post-processing
<BeastCaml>
¯\_(ツ)_/¯
<kaustuv>
(oops at all the typos -- getting used to new keyboard still)
<BeastCaml>
sup son !!!!!
<BeastCaml>
guys, be nice !
xlq has quit [Ping timeout: 260 seconds]
<BeastCaml>
Peace !
avsm1 has joined #ocaml
Kakadu has quit [Quit: Page closed]
BeastCaml has quit [Quit: Page closed]
avsm has quit [Ping timeout: 260 seconds]
<adrien>
kaustuv: the program works properly except for the pointer corruption and the crash; but until it crashes, it seems fine
emmanuelux has joined #ocaml
<adrien>
(it crashes quite quickly but it has had time to do a lot of work in the hundreds of modules, and that includes C bindings, objects, ...)
<adrien>
I'm going to do some tries; but first, I need to eat
oriba has joined #ocaml
Tobu has quit [Ping timeout: 260 seconds]
kaustuv has left #ocaml []
Tobu has joined #ocaml
gnuvince has quit [Ping timeout: 248 seconds]
avsm1 has quit [Quit: Leaving.]
avsm has joined #ocaml
Tobu has quit [Ping timeout: 272 seconds]
iago has quit [Ping timeout: 244 seconds]
Tobu has joined #ocaml
smondet has joined #ocaml
iago has joined #ocaml
|Lupin| has joined #ocaml
<|Lupin|>
Hello, everybooooooody.I'm stuck with a compilation error and would greatly appreciate any help...
<|Lupin|>
Error: Error while linking /usr/lib/ocaml/batteries/batteries.cma(BatMutex):
<|Lupin|>
Reference to undefined global `Mutex'
<thelema_>
link with threads
<thelema_>
-threads
<|Lupin|>
any clue, please ?
<|Lupin|>
thelema_: /me tries, thanks
<|Lupin|>
thelema_: where does -threads have to go, please ?
<thelema_>
how are you compiling? ocmalbuild? ocamlmake? omake?
<|Lupin|>
thelema_: does it need to be passed as an arguemnt to a program ? which one ?
snearch has quit [Quit: Verlassend]
<thelema_>
-threads needs to be passed as an argument to ocamlopt/ocamlc
<thelema_>
Things are bit more complex than necessary in batteries 1.x - with threads: "open Batteries", -threads. Without threads: "open Batteries_uni", no -threads
<thelema_>
batteries 2.0 fixes this, with "open Batteries" for both and "open BatteriesThreads", -threads for thread extensions
<|Lupin|>
thelema_: looks indeed more straightforward!
<|Lupin|>
It's 1.4.1-1 here...
<thelema_>
and it shouldn't cause crazy error messages for people that don't understand everything
<thelema_>
2.0 is still in beta, hopefully released this summer
<|Lupin|>
thelema_: cool
<|Lupin|>
thelema_: yes, at soome point I was a ot too bad Caml programmer, so I think that if it puzzles me it must puzzle other persons...
<thelema_>
I'm looking forward to 2.0 being released, but need to finish some grunt work before this should happen
Tobu has quit [Ping timeout: 260 seconds]
<thelema_>
merging the stdlib docs and functionality back into the BatFoo modules
djcoin has quit [Quit: WeeChat 0.3.2]
<|Lupin|>
thelema_: are you a developer of batteries ?
<thelema_>
yes
cago has quit [Quit: Leaving.]
<|Lupin|>
thelema_: okay. Cool job.
<|Lupin|>
have to goo now but really thanks a lot for the help
<thelema_>
thanks. Let me know any ideas you have for improvements
<thelema_>
cheers
<thelema_>
or just any comments on batteries in general
<|Lupin|>
would probably have needed a lot of time to find out the -thread trick by myself, if I'd ever found it.
<|Lupin|>
thelema_: will sure do !
<thelema_>
another fix is to just "open Batteries_uni", but this is *very* non-obvious
<|Lupin|>
thelema_: yeah and will have to be changed back when 2.0 is released...
<thelema_>
yup.
<|Lupin|>
okay
<|Lupin|>
till soon then!
<|Lupin|>
goodbye.
|Lupin| has quit [Quit: leaving]
iago has quit [Ping timeout: 246 seconds]
<mehdid>
thelema_: is pa_where still part of batteries?
<thelema_>
no
<mehdid>
it is mentioned in some documentation files.
<mehdid>
(html files)
<thelema_>
those documentation files refer to pre-1.0 batteries and should not be referred to