sanguinev has quit [Read error: 110 (Connection timed out)]
alexyk has quit []
ulfdoz has quit [Read error: 110 (Connection timed out)]
Alpounet has quit ["Ex-Chat"]
iago has quit ["Leaving"]
Amorphous has quit [Read error: 104 (Connection reset by peer)]
adamvo has quit ["WeeChat 0.2.6"]
alexyk has joined #ocaml
maxote has quit [Read error: 110 (Connection timed out)]
Amorphous has joined #ocaml
maxote has joined #ocaml
Ched has quit [Read error: 110 (Connection timed out)]
Ched has joined #ocaml
alexyk has quit []
maxote has quit [Connection timed out]
alexyk has joined #ocaml
monadic_kid has quit ["Leaving"]
Lanthus has joined #ocaml
<Lanthus>
Simple question (I hope): What's the easiest way to statically link libraries (e.g., expat) when compiling OCaml code?
<Lanthus>
Nevermind, I figured it out: -cclib -static
mrvn_ has joined #ocaml
mrvn has quit [Read error: 54 (Connection reset by peer)]
julius has joined #ocaml
Lanthus has left #ocaml []
cygnus is now known as Guest88886
julm has quit [Read error: 110 (Connection timed out)]
alexyk has quit []
sporkmonger has joined #ocaml
alexyk has joined #ocaml
<palomer_>
is findlib available as an ocaml library?
sporkmonger has quit []
Associat0r has quit []
<thelema>
palomer_: yes.
<mbishop>
how has that ocaml bot?
munga_ has quit [Read error: 60 (Operation timed out)]
Asmadeus_ has joined #ocaml
sgnb has quit [Read error: 104 (Connection reset by peer)]
sgnb has joined #ocaml
Asmadeus has quit [Read error: 104 (Connection reset by peer)]
Asmadeus_ has quit [Read error: 60 (Operation timed out)]
<alexyk>
anyone knows of a twitter API in ocaml?
munga_ has joined #ocaml
kaustuv_ has quit [Remote closed the connection]
kaustuv_ has joined #ocaml
Asmadeus has joined #ocaml
kaustuv has quit [Read error: 110 (Connection timed out)]
alexyk has quit []
<jli>
mbishop: heh, that's under the "function object" article instead of the "functor" article. oh well.
<jli>
monadic_kid's paper link is interesting. I didn't think ML modules and Haskell type classes were related.
Asmadeus_ has joined #ocaml
Asmadeus1 has joined #ocaml
Asmadeus has quit [Read error: 110 (Connection timed out)]
Asmadeus_ has quit [Read error: 110 (Connection timed out)]
alexyk has joined #ocaml
angerman has joined #ocaml
m3ga has quit ["disappearing into the sunset"]
Guest88886 is now known as cygnus_
kaustuv_ has quit ["ERC Version 5.3 (IRC client for Emacs)"]
ikaros has joined #ocaml
javax has left #ocaml []
alexyk has quit []
alexyk has joined #ocaml
alexyk has quit []
alexyk has joined #ocaml
alexyk has quit [Client Quit]
_zack has joined #ocaml
ikaros has quit ["Leave the magic to Houdini"]
komar_ has joined #ocaml
jli has quit ["leaving"]
Asmadeus1 is now known as Asmadeus
Alpounet has joined #ocaml
hkBst has joined #ocaml
rwmjones has joined #ocaml
ulfdoz has joined #ocaml
OChameau has joined #ocaml
Camarade_Tux has joined #ocaml
LeCamarade has joined #ocaml
rwmjones has quit [Read error: 113 (No route to host)]
rwmjones has joined #ocaml
Associat0r has joined #ocaml
verte has joined #ocaml
verte has quit ["~~~ Crash in JIT!"]
ulfdoz has quit ["brb"]
komar_ has quit [Remote closed the connection]
komar_ has joined #ocaml
ulfdoz has joined #ocaml
ulfdoz has quit ["brb"]
ulfdoz has joined #ocaml
OChameau has quit [Read error: 110 (Connection timed out)]
jonafan_ has joined #ocaml
ulfdoz has quit ["brb"]
ulfdoz has joined #ocaml
jonafan has quit [Read error: 110 (Connection timed out)]
OChameau has joined #ocaml
Yoric[DT] has joined #ocaml
<Camarade_Tux>
hcarty, with ocaml-gir, I could actually bind some of cairo but it would be very limited (only one function and a few types)
julius is now known as julm
<Yoric[DT]>
Is ocaml-gir good?
Amorphous has quit [Read error: 110 (Connection timed out)]
<Camarade_Tux>
currently it can nearly completely bind a g* (gtk*) library but I need to add dependencies between libraries (which is what I'm doing right now)
LeCamarade has quit ["Gone."]
<Camarade_Tux>
the part that is not being bound right now is "record", the problem being I simply don't know what it does :)
<flux>
in cairo? <wild_guess>it records actions you perform (strokes etc) so they can be played back on another cairo object.</wild_guess>
<Camarade_Tux>
seems to be a C struct but it has no associated functions to manipulate them or functions that would use them
<flux>
dislcaimer: I pulled that explanation out of thin air :)
<_zack>
Yoric[DT]: "we" are, mainly because one of the language author has moved here from the ENS lab some years ago
<_zack>
here = PPS (where I'm working)
<Yoric[DT]>
yep
* Yoric[DT]
is currently transitioning to the competition :)
<_zack>
Yoric[DT]: I know you knew, I wasn't sure about the rest of the audience ;)
<thelema>
_zack: why xml for cduce?
<_zack>
thelema: uh?
<_zack>
cduce is natively meant to work on XML
<kaustuv>
Competition to PPS?
<kaustuv>
MLstate?
<_zack>
Yoric[DT]: competition to ocsigen :)
<Yoric[DT]>
Yep.
<Yoric[DT]>
OCsigen = type-safe web programming with OCaml.
* thelema
misread - sorry
<Yoric[DT]>
MLState's OPA = type-safe web programming with a functional language designed for this purpose.
<thelema>
I got the idea that cduce was xml-based, as in the syntax of the language was like xml
<_zack>
thelema: no way, but cduce's syntax manages to be horirble nevertheless (well, IMO)
<thelema>
)
<thelema>
:)
<flux>
I think a practical alternative to all those is using ocsigen's pretty HTML syntax and ocamlnet's cgi/scgi-connectors :)
* thelema
just wants a proper template language
<kaustuv>
Yoric[DT]: that sounds like the stuff that Adam Chlipala (Smerdyakov) is working on
<flux>
except ocamlnet's scgi connector is singlethreaded (iow: it processes at most one request concurrently), but that's easily fixed
<Yoric[DT]>
kaustuv: indeed.
<kaustuv>
Is the world big enough for THREE functional web programming languages?
<Yoric[DT]>
kaustuv: probably not.
<Yoric[DT]>
kaustuv: probably not yet, that is.
<_zack>
thelema: full ack, in fact I'm "mobbing" the ocsigen's author for a template language since I arrived here ;)
<Yoric[DT]>
But in the meantime, I believe that we're all working towards the same goal.
<Yoric[DT]>
Make web programming a safer place.
<Yoric[DT]>
Three different but related approaches.
<flux>
thelema, I take it you've tried ocsigen's HTML syntax?
<flux>
because it's pretty decent for template-like use
<flux>
of course, the templates are without explicit separation operations inside your code
vithos has joined #ocaml
<flux>
but you could put them into separate files, separate functions, if you wish
<_zack>
flux: that's the point of a template system
<thelema>
flux: I haven't, but I see every reason to have a weaker DSL for templating
<_zack>
"let's give your web artist a file they can edit with dreamweaver"
<thelema>
exactly what _zack is thinking.
<_zack>
the best solution I've found thus far are the phythonic kid/genshi
* thelema
gotta go
<_zack>
and actually it wouldn't be particularly difficult to have their typed equivalents
<flux>
ok, I'll have one of those. thank you!
<flux>
:-)
<kaustuv>
Yoric[DT]: wow, your offices are almost next door to PPS even
<Yoric[DT]>
kaustuv: I actually hadn't thought about this but yes, probably something like 500m.
<_zack>
kaustuv: ... and still, I manage to have never met Yoric[DT] ;)
<Yoric[DT]>
:)
<kaustuv>
Meetup!
mishok13 has quit [Read error: 54 (Connection reset by peer)]
<palomer_>
err, how do I call findlib.query from ocaml?
<Yoric[DT]>
kaustuv: we should do that :)
<Yoric[DT]>
(and possibly a team-up, one of these days)
|Lupin| has joined #ocaml
<|Lupin|>
Hello everybody
<|Lupin|>
this is certainly a trivial question: how to know the type of an expression once the .annot file for the corresponding source code has been generated, please ?
<kaustuv>
|Lupin|: If you're using caml-mode or tuareg in Emacs, then C-c C-t
<|Lupin|>
kaustuv: yes that's what I planed to use for this purpose...
<|Lupin|>
hmm I've a function which should be of type unit -> unit but is of type unit -> '_b... wonder where this '_b comes from...
<flux>
|lupin|, how do you figure it returns unit?
<flux>
|lupin|, does it return at all?-)
<flux>
or does it return a value pointed by a global reference..
<|Lupin|>
flux: I don't know actually... I'd like it to return unit but apparently I did something wong and now I'm trying to figure out what...
<flux>
it's quite verbose, but it has all the data from the annot file merged in
<|Lupin|>
flux: cool ! thanks !
<|Lupin|>
actually I just used C-c C-t on all the identifiers of the function, and everythinglooks normal, I have no idea where the warning could come from...
<flux>
warning?
komar_ has joined #ocaml
<|Lupin|>
ah actually I have understood
<|Lupin|>
it's because the last thing done by the function was to call exit
<|Lupin|>
yeah there was a warning saying that the function never returns or sometthig else...
<flux>
|lupin|, well, you can just stick annotation : unit somewhere, or use ignore (exit ())
<|Lupin|>
ah that's a good idea
<|Lupin|>
actually I thought the weird annotation was the symptom for a segmentation fault I try to solve, but now it seems it's not the symptom, because even with the tyes fixed, the program still segfaults...
<flux>
ooh, segfaults are scare
<flux>
are c-libraries involved?
<|Lupin|>
yes
<flux>
well, there you have it :)
<|Lupin|>
I'm using stub code for libxmlsec, which I am currently developing
<|Lupin|>
I inspected the program with gdb
<|Lupin|>
it's srange
<flux>
I have one c-lib binding which I never managed to really work properly under torture scenarios, and it sucks
<flux>
+make
<|Lupin|>
one of the stub function is called with its first parameter (caml value) equal to 1
<|Lupin|>
flux: I see
<|Lupin|>
the other thing I do not quite understand is that I used printf on stderr, both in Caml and in C, which should appear before the function is called, and which are actually not displayed...
<mrvn_>
you need to flush in ocaml
mrvn_ is now known as mrvn
<|Lupin|>
mrvn: even stderr ?
<mrvn>
think so
<mrvn>
I think Printf.printf never flushes
OChameau-bis has joined #ocaml
<Yoric[DT]>
If you want printf to flush, you need to add %! in the string.
<|Lupin|>
Yoric[DT]: ah I didn't knwo %!...
<|Lupin|>
I just added calls to flush after every call to printf in the function of interest, none is displayed
<|Lupin|>
the only one I can see is the one in the C function that segfaults
<|Lupin|>
there is even another one in another C function that is not displayed
<|Lupin|>
and I think there is no tricky thing with evaluation order involved, because it's let-in style
alexyk has joined #ocaml
OChameau has quit [Read error: 110 (Connection timed out)]
<hcarty>
palomer_: From the output of "ocamlfind -list" I would guess it is findlib
<palomer_>
you're right!
<Camarade_Tux>
I've been wondering : is ocamlfind/findlib available as a regular ocaml lib that wouldn't require you to use Sys.command and parse its output ?
<hcarty>
robocop: You're welcome. Functors are powerful but can be a little strange to get used to.
<hcarty>
Camarade_Tux: Yes, there is a Findlib module
<hcarty>
Camarade_Tux: I started on a CPAN-like tool a while ago based around Findlib, but was unable to dedicate enough time to it to get it off of the ground.
<palomer_>
Findlib.package_directory is a much better alternative to /usr/lib
<palomer_>
err, I meant Sys.command
<Camarade_Tux>
hcarty, right : findlib.cmx?a
<Camarade_Tux>
thanks a lot, that will help me a lot, I always thought it was only a command-line tool :)
<hcarty>
Camarade_Tux: I had thought so too! Findlib-the-module support in ocamlbuild would be a really nice thing to have in the future
ulfdoz has quit ["Changing server"]
<Camarade_Tux>
right, basically all my myocamlbuild.ml add that
<thelema>
hmm, git-cvsimport is no longer in ubuntu
jonafan_ is now known as jonafan
<julm>
thelema: neither in debian, use something like that: git cvsimport -v -k -m -p '-x,-Z,7' -A ./AUTHORS -d ':pserver:anoncvs@camlcvs.inria.fr:/caml' ocaml
<thelema>
aha, without the - it works.
<julm>
yep
<hcarty>
thelema: All of the "git-foo" commands were deprecated a few releases ago, to be replaced by "git foo" instead. They apparently still exist, just outside of $PATH
<thelema>
okay, the repo.or.cz mirror is up to date.
<julm>
cool :)
<Camarade_Tux>
they are in /usr/libexec/git-core
alexyk has quit []
_zack has quit ["Leaving."]
Ched has quit [Remote closed the connection]
monadic_kid has joined #ocaml
Amorphous has joined #ocaml
jbjohns has joined #ocaml
psnively has joined #ocaml
jlouis has quit [anthony.freenode.net irc.freenode.net]
gildor has quit [anthony.freenode.net irc.freenode.net]
authentic has quit [anthony.freenode.net irc.freenode.net]
patronus has quit [anthony.freenode.net irc.freenode.net]
jlouis_ has joined #ocaml
authentic has joined #ocaml
patronus has joined #ocaml
gildor has joined #ocaml
<Camarade_Tux>
I guess I'll just wait for the code for linking with C with ocamlbuild to be written with clouds in the sky :)
love-pingoo has joined #ocaml
<psnively>
omake is your friernd.
<psnively>
Friend, even.
itewsh has joined #ocaml
<Camarade_Tux>
I could do it by hand actually, I always have three files and the same operations to do
<Camarade_Tux>
right, it should be much easier actually
<Camarade_Tux>
except that I wanted to autogenerate the build system but not actually build
alexyk has joined #ocaml
jli has joined #ocaml
<jli>
so, functors are just functions that take modules as arguments and returns a module?
<palomer_>
To apply the patch, download the patch file to the toplevel directory of a fresh OCaml 3.04 source tree, and do:
<palomer_>
oh wait, that patch is for version 3.00
<Camarade_Tux>
meh, I'll just use a class Makefile and wait for ocamlbuild to provide easy support for building with C
<palomer_>
is there a point to using ocamlbuild if you're already using omake?
<Camarade_Tux>
s/class/classic/
_andre has quit ["Lost terminal"]
love-pingoo has quit ["Connection reset by pear"]
itewsh has quit [Connection timed out]
itewsh has joined #ocaml
Snark has quit ["Ex-Chat"]
itewsh has quit [Connection timed out]
itewsh has joined #ocaml
alexyk has joined #ocaml
itewsh has quit [Remote closed the connection]
dabd has quit [Client Quit]
alexyk_ has joined #ocaml
alexyk has quit [Read error: 113 (No route to host)]
alexyk has joined #ocaml
Ched has joined #ocaml
alexyk has quit [Client Quit]
<kaustuv_>
What is the best way to convince Cygwin to update their OCaml packages?
ikaros has quit ["Leave the magic to Houdini"]
monadic_kid has quit ["Leaving"]
<Camarade_Tux>
that reminds me why I gave up on cygwin : no updates
<Camarade_Tux>
ocaml is still 3.08, right ?
<kaustuv_>
Yes
<Camarade_Tux>
(and gtk was basically 6-years old)
jamii has joined #ocaml
<kaustuv_>
If you gave up on Cygwin, what do you use? Or did you also give up on Windows?
<Camarade_Tux>
well, make sure you can build 3.11 for instance and just harass them
<kaustuv_>
Yes, 3.11.1+rc0 builds fine
<Camarade_Tux>
I went for mingw which I prefer but which is not perfect either and has its own problems
<Camarade_Tux>
right now I'm more interested in cross-compilation though
<gildor>
kaustuv_: there is the msvc version of ocaml provided by INRIA
<kaustuv_>
gildor: It requires msvc, which is an absurdly unreasonable thing to expect of users
alexyk_ has quit [Read error: 113 (No route to host)]
<gildor>
cygwin is also a big thing to expect of users
<palomer_>
mingw!
<gildor>
kaustuv_ is talking about the version from cygwin, not mingw
<kaustuv_>
What kinds of problems does mingw have? Is there a web page that documents them?
<Camarade_Tux>
there is a free version of msvc but I don't know what it is capable of
<gildor>
MS Visual Express, free
<Camarade_Tux>
kaustuv_, basically, with mingw, you'll lack some features
<gildor>
used it actually, works well
<palomer_>
hrmph
<palomer_>
a cross compiler would be cool
<Camarade_Tux>
but many apps work fine still
<Camarade_Tux>
there is a cross-compiler in the works iirc
<Camarade_Tux>
s/iirc//
<kaustuv_>
Camarade_Tux: what kinds of features are these? I need to know specifics because I have to make an executive decision about the future of my project
slash_ has joined #ocaml
<Camarade_Tux>
one is that you'll lack some libs, especially C/C++ ones (but you can quite easily cross-compile them from linux)
<Camarade_Tux>
another one is that cygwin provides a cygwin environment ocaml can rely on
monadic_kid has joined #ocaml
<Camarade_Tux>
kaustuv_, btw, the page on ocaml-tutorial is quite old and would probably need updating
<kaustuv_>
Cygwin's main DLL is GPL? Does this mean that any program compiled in Cygwin itself must be distributed under the GPL?
<Camarade_Tux>
kaustuv_, yes
<Camarade_Tux>
you can compile with -mno-cygwin however
<kaustuv_>
This is such a deplorable mess. Why is everything always ten times harder on Windows?
<Camarade_Tux>
I guess it's the lack of a standard base : things are not shared and every app bundles all its libs and that leads to an infinite number of incompatibilities