<elehack>
the GODI package for Batteries successfully builds on FreeBSD.
<thelema>
yay!
<thelema>
what do you think of releasing 1.2.0 in a week or two?
<elehack>
that sounds good to me.
<elehack>
do we want to merge the UTF8 private type change for that?
<thelema>
sure - sounds reasonable to me.
<thelema>
I'm fixing up the float printing code
<elehack>
kk
caligula__ has joined #ocaml
<elehack>
did you have any thoughts on my added non-copying UTF8.adapt_string?
<elehack>
err, adopt_string
caligula_ has quit [Ping timeout: 276 seconds]
<thelema>
there already exists UTF8.adopt
<thelema>
oops, it's not in the interface.
<thelema>
to_string_unsafe and of_string_unsafe also exist, although aren't documented
<elehack>
yeah.
<elehack>
somehow I missed adopt's existence
<elehack>
if we just expose it that would meet the need.
<thelema>
done
<elehack>
ok.
<elehack>
thanks :)
<thelema>
more fun stuff pushed
<elehack>
ok :) I just pushed the UTF8 private type change.
MrEvil has quit [Read error: Connection reset by peer]
adrien has quit [Ping timeout: 248 seconds]
adrien has joined #ocaml
maskd has quit [Quit: leaving]
Morphous has quit [Ping timeout: 260 seconds]
Morphous has joined #ocaml
valross has joined #ocaml
jeddhaberstro has quit [Quit: jeddhaberstro]
elehack has quit [Quit: Goodbye...]
wormphlegm has joined #ocaml
jakedouglas has quit [Quit: Leaving.]
ulfdoz has joined #ocaml
jakedouglas has joined #ocaml
mutew has quit [Ping timeout: 252 seconds]
mutew has joined #ocaml
enthymeme has joined #ocaml
wormphlegm has quit [Quit: bye]
ttamttam has joined #ocaml
enthymeme has quit [Ping timeout: 240 seconds]
ygrek has joined #ocaml
marteo has joined #ocaml
f[x] has joined #ocaml
ulfdoz has quit [Ping timeout: 260 seconds]
Yoric has joined #ocaml
avsm has joined #ocaml
avsm has quit [Client Quit]
avsm has joined #ocaml
ftrvxmtrx has quit [Quit: Leaving]
Yoric has quit [Quit: Yoric]
avsm has quit [Quit: Leaving.]
ftrvxmtrx has joined #ocaml
marteo has quit [Read error: Connection reset by peer]
avsm has joined #ocaml
avsm has quit [Quit: Leaving.]
Gooffy has joined #ocaml
barismetin has joined #ocaml
Yoric has joined #ocaml
maattd has quit [Quit: maattd]
maattd has joined #ocaml
ggole has joined #ocaml
ftrvxmtrx has quit [*.net *.split]
ttamttam has quit [*.net *.split]
thelema has quit [*.net *.split]
noj has quit [*.net *.split]
thieusoai has quit [*.net *.split]
Modius_ has quit [*.net *.split]
mbishop has quit [*.net *.split]
olegfink has quit [*.net *.split]
jlouis has quit [*.net *.split]
bitbckt has quit [*.net *.split]
emias has quit [*.net *.split]
ftrvxmtrx has joined #ocaml
ttamttam has joined #ocaml
thelema has joined #ocaml
noj has joined #ocaml
thieusoai has joined #ocaml
Modius_ has joined #ocaml
mbishop has joined #ocaml
olegfink has joined #ocaml
jlouis has joined #ocaml
bitbckt has joined #ocaml
emias has joined #ocaml
jlouis has quit [Ping timeout: 246 seconds]
jlouis has joined #ocaml
<ggole>
Hmm, 1.0x lexes as Float 1.0, Symbol x
<ggole>
I'd always assumed it should be an error
komar_ has joined #ocaml
lvillani has joined #ocaml
jao has quit [Ping timeout: 276 seconds]
valross has quit [Remote host closed the connection]
th5 has joined #ocaml
adrien has quit [Quit: leaving]
adrien has joined #ocaml
drk-sd has joined #ocaml
ikaros has joined #ocaml
drk-sd has quit [Client Quit]
drk-sd has joined #ocaml
adrien has quit [Quit: leaving]
adrien has joined #ocaml
Asmadeus has quit [Read error: Operation timed out]
adrien has quit [Ping timeout: 245 seconds]
Asmadeus has joined #ocaml
adrien has joined #ocaml
ikaros has quit [Quit: Leave the magic to Houdini]
mcclurmc has quit [Quit: Ex-Chat]
pimmhogeling has joined #ocaml
ggole has left #ocaml []
seafood has joined #ocaml
avsm has joined #ocaml
avsm has quit [Quit: Leaving.]
avsm has joined #ocaml
_andre has joined #ocaml
itewsh has joined #ocaml
_unK has joined #ocaml
thrasibule has quit [Ping timeout: 276 seconds]
thrasibule has joined #ocaml
boscop has joined #ocaml
ikaros has joined #ocaml
thrasibule has quit [Ping timeout: 240 seconds]
segmond has joined #ocaml
<hcarty>
thelema: Woo! Thank you for the extra estring magic :-)
spearalot has joined #ocaml
seafood has quit [Quit: seafood]
rovar_ has quit [Ping timeout: 252 seconds]
* mehdid
.oO(hum... isn't the original author "Jérémie Dimino"?)
<thelema>
mehdid: yes, he originally wrote estring
<hcarty>
mehdid: Yes, but thelema fixed the float printing
<hcarty>
I have thanked the original author before, but if they are around I would be happy to thank them again - I've found it to be a very useful tool.
<mehdid>
btw, what's the use of BatUnit? (maybe stupid question)
<thelema>
hcarty: if you want to finish the rest of the options, it should be straightforward (but tedious) to complete along the lines of the new printer_f/F
<thelema>
mehdid: batUnit is there mostly for completeness
<thelema>
it's occasionally useful to have a Unit.print function for printing larger structures, part of which has been specialized to unit.
<thelema>
the current GODI is double-plus old. The next release of batteries will support GODI under the new codebase.
<emias>
Ah, I see.
<thelema>
Thank you for the bug report, though. We should have a proper release with the week.
<thelema>
well, within 2 weeks
itewsh has quit [Quit: There are only 10 kinds of people: those who understand binary and those who don't]
<hcarty>
thelema: Thanks. I may be able to work on it, but I'm not sure if it would be before the release.
<thelema>
no worries. I'm going to close your bug for now.
<hcarty>
Sounds good
M| has quit [Ping timeout: 240 seconds]
derdon has joined #ocaml
M| has joined #ocaml
fraggle_laptop has quit [Ping timeout: 240 seconds]
fraggle_laptop has joined #ocaml
ikaros has quit [*.net *.split]
peddie has quit [*.net *.split]
rovar has joined #ocaml
<rovar>
anyone here familiar with Lwt?
<diml>
yes, i am
<rovar>
diml: I'm trying to understand the implementation, specifically, how/where does it do polling on file descriptors? I'm assuming that it does so, I can't imagine it would block on them.
<diml>
it does the polling in Lwt_main
<rovar>
ah.. and in unix/private/lwt_select
<rovar>
main calls lwt_select.. for some reason I didn't see that before.
<rovar>
the reason I ask, is, I wrote a wrapper for epoll (and other kernel level polling APIs but they haven't been implemented yet)
<rovar>
I have requirements for polling a huge amount of connections (10k +) and I assume that select isn't up to the job, so I would like to integrate epoll into Lwt
<diml>
rovar: lwt_select only redirect select to either Unix.select or lwt_unix_select
<rovar>
right...
spearalot has quit [Quit: Computer has gone to sleep]
<nfrs>
what is the function that toplevel uses to print values? I want a function that can print arbitrary value: array, or function, or integer, or whatever
<rovar>
Gooffy: thanks, that ticket in track just opened.
<rovar>
arg
<rovar>
darcs has broken proxy support.. and I am behind a proxy :l
<hcarty>
nfrs: There is no fully generic printer in OCaml - the toplevel's printers are not directly available from user code as types are lost when code is compiled.
<hcarty>
nfrs: However, Batteries has some nice functions to help out
<hcarty>
nfrs: There is a "dump" function which will provide a generic string representation of a value
<rovar>
diml: grazie
<nfrs>
hcarty: I guess I'll stick with toplevel, if it's complex to do right
<nfrs>
I just need it for debugging, anyway
<hcarty>
nfrs: Also look at the BatPrint module and the related syntax extension. It allows for wonderful things like (Print.printf p"%{int list}" [1; 2; 3])
lvillani has quit [Ping timeout: 248 seconds]
rovar has quit [Ping timeout: 252 seconds]
komar_ has quit [Quit: WeeChat 0.2.6]
rovar has joined #ocaml
<rovar>
grr
<rovar>
I keep getting disconnected.
<rovar>
how do I convince the lwt topfind to execute expressions?
th5 has quit [Quit: th5]
<Gooffy>
rovar: did you mean Lwt_unix.run (expr) ?
lvillani has joined #ocaml
peddie_ has joined #ocaml
<rovar>
Gooffy: no, when I execute any command, such as #use "topfind";; it never returns
<rovar>
actually.. i think it uses topfind by default.. so #require "lwt" or even 1 + 1
<rovar>
it never produces the result, it just hangs
<rovar>
is ;; not the execution symbol for the lwt toplevel?
peddie has quit [Ping timeout: 260 seconds]
wormphlegm has joined #ocaml
<diml>
rovar: it is
<rovar>
odd.. mine seems broken then
<diml>
rovar: do you see the "Welcome to the new Lwt..." message when you start the lwt toplevel ?
<rovar>
yep
<rovar>
i get a command prompt, but any command I execute just hangs
<rovar>
in the old toplevel, I have imported and successfully used the lwt_libev
<rovar>
so I'm not sure what is the problem
<rovar>
# let foo = 1 + 1;;
<rovar>
this does not return
<diml>
have you a .ocamlinit file ?
<rovar>
no
<diml>
does it works if you load "lwt.top" in the standard toplevel ?
Shoggoth has joined #ocaml
<rovar>
no
<rovar>
it loads and prints the title correctly, but it doesn't evaluate
<diml>
and if you load only "lwt.unix" ?
<rovar>
I am using the ubuntu versions of text and react, could there be a problem there?
<rovar>
lwt.unix seems to work correctly
<rovar>
i tested a pipe
<diml>
what the version of the ocaml-text package ?
<rovar>
0.2
<diml>
ok, so the problems with the toplevel come from here
<diml>
you must use the 0.3 version
<rovar>
thanks, downloading now
wormphlegm has quit [Quit: bye]
<rovar>
diml, that fixed it, thanks again
ftrvxmtrx has quit [Quit: Leaving]
<rovar>
diml, one more question, on my other machine I seem to be missing env.cmi
<rovar>
do you know what package provides that?
<rovar>
hrrm.. i'll just do ocaml-core.. that oughta fix it
<gildor>
OCamlCore, someone aks for me
<gildor>
;-)
ulfdoz has joined #ocaml
<adrien>
^ ^
ttamttam has quit [Quit: Leaving.]
Shoggoth has quit [Remote host closed the connection]
<diml>
rovar: on debian it is ocaml-compiler-libs
Yoric has quit [Quit: Yoric]
SEcki has joined #ocaml
<rovar>
diml, thanks
<rovar>
one last question, what are the keystrokes to choose an autocompletion option?
<rovar>
in lwt toplevel
<rovar>
is there a listing of keystrokes somewhere?
<diml>
alt+left/right to naviguate in proposed completion, and atl+tab to choose one
<diml>
for the listing, for now it is only in the code... in the future they will be in the manual
ulfdoz_ has joined #ocaml
ulfdoz has quit [Read error: Operation timed out]
ulfdoz_ has quit [Client Quit]
ulfdoz has joined #ocaml
<hcarty>
diml: Does the Lwt toplevel complete on anything beyond keywords?
<hcarty>
It looks very interesting, but I haven't been able to try/test it properly yet.
<diml>
rovar: it completes on keywords, directives, values, modules, and findlib packages
<adrien>
values, how does it do it? a-la cmigrep?
<diml>
it uses compiler libraries
<diml>
so it have access to the toplevel environment
<jsk-office>
I have a question regarding emacs tuareg mode. Is it possible to configure the tuareg formatter so that it uses one tab character for each level of indentation? So far, my attempts to do this end up with a rather unfortunate mixture of tabs and spaces! :)
jsk-office is now known as jsk
<adrien>
ah, right, I thinking about thelema's patch which will mention possible typos when compiling
<thelema>
adrien: you use that patch?
<adrien>
thelema: no
<adrien>
I still think having an external "dump" of values would be possible even though I wouldn't mind having it in the compiler
sepp2k has joined #ocaml
<thelema>
jsk: you want only tab characters used for indenting?
krankkatze has joined #ocaml
<adrien>
(as long as it's not a mix of tabs and spaces...)
<rovar>
diml: I might hack it to use something other than alt+tab. that causes problems on most desktops :)
ftrvxmtrx has joined #ocaml
<jsk>
thelema: Yes. I'd like to use only tab characters for indenting. (Not a mixture of tabs and spaces.)
<thelema>
what about the standard to unindent 2 spaces for match clauses
marteo has joined #ocaml
<jsk>
The code base I'm working with uses a | for every single case, including the first one.
<jsk>
(Apologies if I understood incorrectly :)), but I suspect there's no need to "unindent", in this code base.
<thelema>
I guess if you really wanted, you could set all indent/unindents to multiples of 4, and set the tap size to 4
<jsk>
thelema: thanks for your help. I tried the following:
<jsk>
(setq tuareg-default-indent 4)
<jsk>
(setq default-tab-width 4)
<jsk>
This works for many things
<thelema>
but there's exceptions. You'll likely have to go into the tuareg settings and find the rest of the tab settings
<jsk>
thelema: thanks for your help. It does seem that there are many corner cases, as you mention.
<thelema>
you've found the customize group for tuareg?
<jsk>
thelema: for instance, tuareg indents a nested match clause as a set series of tabs plus 2 spaces.
<jsk>
Though, I can't work out where the 2 extra spaces come from. :)
<jsk>
thelema: yes, have found that.
<thelema>
and everything's set to 4?
travisbrady has joined #ocaml
<jsk>
thelema: Yes, everything
ttamttam has joined #ocaml
<travisbrady>
anyone know of a library function somewhere to pivot a list of pairs by the first element?