<thelema>
I looked, and didn't see any mention of the change in the summary of changes
<sgnb>
it looks like an ocaml bug...
<thelema>
hmm, maybe it'll be fixed in 3.12 proper, and we shouldn't try to work around it...
<sgnb>
I also think so... I've committed the patch for future reference
<sgnb>
now, all debian packages that depend on ocaml (except jocaml and scilab) are compiled with 3.12.0+beta1 in my repository
<thelema>
very nice
Associat0r has quit [Read error: Connection reset by peer]
maskd has quit [Ping timeout: 260 seconds]
travisbrady has quit [Quit: travisbrady]
maskd has joined #ocaml
maskd has quit [Ping timeout: 265 seconds]
prince has joined #ocaml
Amorphous has quit [Ping timeout: 248 seconds]
Amorphous has joined #ocaml
Associat0r has joined #ocaml
nixness has joined #ocaml
nixness has left #ocaml []
seafood_ has joined #ocaml
seafood has quit [Ping timeout: 272 seconds]
seafood_ is now known as seafood
maskd has joined #ocaml
maskd has quit [Ping timeout: 258 seconds]
maskd has joined #ocaml
maskd has quit [Read error: Operation timed out]
maskd has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 265 seconds]
maskd has quit [Read error: Operation timed out]
ftrvxmtrx has joined #ocaml
ChristopheT has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
ChristopheT has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 240 seconds]
ulfdoz has joined #ocaml
maskd has joined #ocaml
maskd has quit [Ping timeout: 240 seconds]
danicampa90 has joined #ocaml
ftrvxmtrx has joined #ocaml
maskd has joined #ocaml
Yoric has joined #ocaml
maskd has quit [Ping timeout: 252 seconds]
danicampa90 has quit [Ping timeout: 265 seconds]
ttamttam has joined #ocaml
maskd has joined #ocaml
danicampa90 has joined #ocaml
maskd has quit [Ping timeout: 248 seconds]
ikaros has joined #ocaml
ttamttam has quit [Quit: Leaving.]
ttamttam has joined #ocaml
maskd has joined #ocaml
maskd has quit [Changing host]
maskd has joined #ocaml
ttamttam has quit [Quit: Leaving.]
ttamttam has joined #ocaml
maskd has quit [Ping timeout: 260 seconds]
_unK has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 264 seconds]
sepp2k has joined #ocaml
ftrvxmtrx has joined #ocaml
danicampa90 has quit [Remote host closed the connection]
Anarchos has joined #ocaml
seafood_ has joined #ocaml
seafood has quit [Ping timeout: 265 seconds]
seafood_ is now known as seafood
seafood has quit [Quit: seafood]
Dead_Dreamer has joined #ocaml
maskd- has joined #ocaml
maskd- is now known as maskd
ski has quit [Ping timeout: 264 seconds]
maskd has quit [Ping timeout: 260 seconds]
emmanuelux has joined #ocaml
maskd has joined #ocaml
maskd has quit [Ping timeout: 240 seconds]
seanmcl has quit [Quit: seanmcl]
seanmcl has joined #ocaml
maskd has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
jonafan_ has joined #ocaml
jonafan has quit [Ping timeout: 260 seconds]
ccasin has joined #ocaml
Dead has joined #ocaml
Dead_Dreamer has quit [Ping timeout: 265 seconds]
eridu has joined #ocaml
<eridu>
are there any tools that auto-generate ocaml bindings for C libraries?
<flux>
there is ocamlidl and swig. but I don't think either of them are fully automatic, you will need to give them assistance
<adrien>
yeah, but first: for which library do you want such a tool
<adrien>
(disclaimer: I'm making one :p )
<flux>
adrien, you're making a C-binding maker for ocaml? cool!
<flux>
adrien, here's an idea I've offered to others pursuing the same goal as well: provide a clean library interface that allows to make custom interface generation :)
<eridu>
I'm writing ocaml bindings for gpgme, and it's just tedious
<adrien>
I was working on ocaml-gir before but gobject-introspection has far too many problems
<adrien>
flux: it's what I'm doing ;-)
<flux>
adrien, \o/
<flux>
infact the 'others' in the previous sentence might be you :-)
<flux>
adrien, is there a public repository for it?
<adrien>
flux: http://git.ocamlcore.org/cgi-bin/gitweb.cgi?p=cowboy/cowboy.git;a=summary , it's two/three stages: yacfe parses unpreprocessed .c or .h files (it can do C++ too but I'm not handling that yet), then cintf strips all the useless info (like function bodies) and finally, there's a per-API module (currently there's only one for glib-based libraries, will probably grow)
<adrien>
yacfe is not packaged however, if you want to install it, tell me, I'll guide you quickly and give you a META
<adrien>
src/glib/glib.ml is in quite early development, I'll eventually split it (everything is already in modules anyway)
Yoric has quit [Quit: Yoric]
<flux>
adrien, ok, I've got yacfe-light-0.3 extracted. further instructions and META, please?-)
<adrien>
flux: build yacfe with : OPTBIN=.opt make
<adrien>
DO NOT FORGET THE OPTBIN= part! (unless you're very patient)
<adrien>
put in the sources folder, then run: ocamlfind install yacfe META {commons,parsing_c}/*.{cm*,a,o}
<adrien>
(hope the command works, I just rewrote it)
<flux>
I'll try tab-expanding it once the time comes
<adrien>
;-)
<aavogt>
do people here use MetaOCaml?
<aavogt>
I'm not sure what the advantages of the more fancy typing in MetaOCaml is vs. say template haskell
<adrien>
eridu: how many functions are there in gpgme? and how tedious/repetitive is it? can you pastebin what you've done until now?
<flux>
I have the belief that the point of MetaOCaml is performance and possibly generating code (like C) in an ocaml-friendly fashion
<flux>
in other words, it's not for having a better type system
<flux>
I thought template haskell is something like what camlp4 provides?
<eridu>
adrien: not many, I guess, but I feel most of what I'm doing could be done with a small CIL program
<aavogt>
using template haskell doesn't transparently extend the syntax like a preprocessor
<flux>
aavogt, well, wouldn't that just be then a subset of a preprocessor?
<aavogt>
preprocessors don't get to do introspection usually
<adrien>
eridu: it depends: the question is always: is spending time designing and coding that program faster than making it by hand? for small libraries or for libraries which don't have some kind of interface rules, it's not really worth it, but gpgme.h seems quite big
<flux>
aavogt, ok, so template haskell interacts with the type system?
<aavogt>
yeah, it's not very complete though
<flux>
adrien, whee, ./compile.sh ran through with success
<adrien>
the idea behind my project is to give access to the library interface in a friendly way along with helper functions that are valid for different libraries and after that, it should be much easier to write a program/module to generate the bindings
<adrien>
flux: :-)
<aavogt>
as in, there are things that might be nice to do, but aren't possible
<adrien>
flux: I've been working on webkit-gtk bindings but run.sh should be quite easy to adapt for other projects
<adrien>
flux: in run.sh, 'webkit-1.0' is the pkg-config name, then the include path and the last one is the "webkit" in "/usr/include/webkit-1.0/webkit" (hope it makes sense, and as you see, the "build" system is only valid for glib-based libraries right now)
<aavogt>
it still isn't clear what it means to have multiple stages in the metaprogram, though maybe it's just that you can nest quote brackets and splices one way (with things being in scope as expected)