gildor changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 3.12.0 http://bit.ly/aNZBUp
ymasory has quit [Quit: Leaving]
arubin has joined #ocaml
arubin has quit [Quit: arubin]
arubin has joined #ocaml
munga has quit [Ping timeout: 276 seconds]
KDr2 has joined #ocaml
KDr2 has quit [Ping timeout: 240 seconds]
KDr2 has joined #ocaml
dnolen has joined #ocaml
ymasory has joined #ocaml
enthymeme has joined #ocaml
smrz has joined #ocaml
lopex has quit []
KDr2 has quit [Quit: Leaving.]
philtor has quit [Ping timeout: 258 seconds]
joewilliams is now known as joewilliams_away
ymasory has quit [Quit: Leaving]
smrz has quit [Quit: Computer has gone to sleep.]
enthymeme has quit [Ping timeout: 248 seconds]
q[mrw] has joined #ocaml
dnolen has quit [Quit: dnolen]
arubin has quit [Quit: arubin]
hto has quit [Ping timeout: 260 seconds]
eye-scuzzy has joined #ocaml
eye-scuzzy has quit [Client Quit]
ulfdoz has joined #ocaml
vivanov has quit [Remote host closed the connection]
boscop_ has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 240 seconds]
boscop has quit [Ping timeout: 240 seconds]
hto has joined #ocaml
boscop_ is now known as boscop
ftrvxmtrx has joined #ocaml
jderque has joined #ocaml
orbitz has quit [Ping timeout: 260 seconds]
ulfdoz has quit [Read error: Operation timed out]
KDr2 has joined #ocaml
orbitz has joined #ocaml
orbitz has quit [Read error: Operation timed out]
joelr has joined #ocaml
ikaros has joined #ocaml
orbitz has joined #ocaml
Cyanure has joined #ocaml
douknoukem has quit [Read error: Connection reset by peer]
thomasga has joined #ocaml
impy has quit [Ping timeout: 240 seconds]
Yoric has joined #ocaml
sepp2k has quit [Quit: Leaving.]
q[mrw] has left #ocaml []
vivanov has joined #ocaml
hto has quit [Ping timeout: 246 seconds]
ikaros has quit [Quit: Leave the magic to Houdini]
joelr_ has joined #ocaml
ocp has joined #ocaml
joelr has quit [Read error: Connection reset by peer]
joelr_ is now known as joelr
eikke has joined #ocaml
edwin has joined #ocaml
munga has joined #ocaml
jamii has joined #ocaml
joelr has quit [Quit: joelr]
joelr has joined #ocaml
larhat has joined #ocaml
avsm has quit [Quit: Leaving.]
joelr has quit [Quit: joelr]
avsm has joined #ocaml
eye-scuzzy has joined #ocaml
gildor has joined #ocaml
waern_ has joined #ocaml
KDr21 has joined #ocaml
KDr21 has quit [Client Quit]
KDr21 has joined #ocaml
Snark has joined #ocaml
KDr2 has quit [Ping timeout: 248 seconds]
ecc has quit [Ping timeout: 252 seconds]
joelr has joined #ocaml
KDr21 has left #ocaml []
ski has quit [Ping timeout: 260 seconds]
avsm has quit [Quit: Leaving.]
gildor has quit [Quit: leaving]
gildor has joined #ocaml
ski has joined #ocaml
munga has quit [Ping timeout: 258 seconds]
thomasga has quit [Quit: Leaving.]
thomasga has joined #ocaml
avsm has joined #ocaml
mnabil has joined #ocaml
dnolen has joined #ocaml
ocp has left #ocaml []
oriba has joined #ocaml
pkl has joined #ocaml
ocp has joined #ocaml
<pkl> godi rocketboost fails with an Assembler error: camlRandom__rawfloat_126 does not evaluate to a constant.
<zorun> pkl: which distro?
<flux> pkl, kaustuv had a similar problem
<zorun> there's a bug in ocaml 3.12 with recent binutils, on 64 bit systelms
<zorun> *systems
ocp has left #ocaml []
ocp has joined #ocaml
munga has joined #ocaml
ski has quit [Ping timeout: 260 seconds]
<kaustuv> OCaml in Debian unstable has this patch applied already.
<zorun> yep
<zorun> but it's not released yet, so on other systems ...
lopex has joined #ocaml
<thelema> hcarty: what server doesn't provide dependency information? oasis-db?
<pkl> thank you (distro is arch)
<pkl> I am not sure how to add a patch within godi.
ski has joined #ocaml
dnolen has quit [Quit: dnolen]
pkl has quit [Read error: Connection reset by peer]
jderque has quit [Quit: leaving]
avsm has quit [Quit: Leaving.]
joelr has quit [Quit: joelr]
ecc has joined #ocaml
<hcarty> thelema: Yes
<hcarty> oasis-db only provides the source archive in the info file
<thelema> for batteries?
<hcarty> For batteries or, as far as I can tell, anything else
<thelema> hmm, maybe gildor broke this...
<hcarty> gildor: ping
<thelema> hcarty: you're right.. huh.
<thelema> hmm, th eoasis info file has deps...
<thelema> maybe if we packaged the current batteries (which has an _oasis file), it'd have deps...
<hcarty> thelema: The _oasis file in the archive, or something else?
<thelema> (and it'd have newer batteries)
<thelema> in what was uploaded to make the package on the server
avsm has joined #ocaml
<thelema> grr, I need an edit button to edit packages.
<hcarty> thelema: Was that in one of the links gildor gave ~a few weeks ago? I don't have them handy at the moment.
<thelema> the admin page doesn't seem to work for me at the moment, and I don't think it ever was able to get into the details of a package, just to organize them between stable, testing, unstable
<hcarty> Is it possible to upload new packages?
<thelema> yes, that's the best solution I can think of
<hcarty> thelema: I get a 404 on the admin page
<thelema> I blasted my ~/.odb recently, so I don't have oUnit installed to do a batteries [make release]
<thelema> blah
* thelema puts odb back to the old webroot
<thelema> and restarts the web server...
<thelema> and makes some symlinks to emulate stable/unstable/testing on web server
<thelema> let webroot = "http://mutt.cse.msu.edu:8081/"
<thelema> this should make your odb work for batteries at least
<hcarty> thelema: Ok, thanks
<gildor> pong
<thelema> gildor: hey, welcome back. Did you have a good vacation?
<gildor> hcarty, thelema: I think the current batteris tarball don't include an _oasis, that is the reason of the problem
<gildor> thelema: nice vacation, totally offline and I have a huge backlog of mails
<hcarty> gildor: Ok, thanks - that makes sense
<thelema> gildor: can I get an edit interface for packages?
<gildor> thelema: and I a moving to a new home tomorrow
<hcarty> gildor: Congratulations :-)
<gildor> thelema: what kind of edit interface of packages ?
<gildor> hcarty: thx
<thelema> specifically, I need to be able to rename them and tweak their deps
<gildor> thelema: humm, it should be done by creating a simple _oasis and repackaging the tarball with version + oasisX (e.g. 1.3.0oasis1)
<gildor> thelema: repackaging server side, of course
<gildor> thelema: and the interface to edit _oasis should be online
<thelema> well, I guess I'll have to start supporting oasisX versions...
<gildor> thelema: that is part of the plan, but for now I am working on the CLI
<gildor> thelema: you can do it by hand (repackaging client side) and upload the resulting tarball
<thelema> Why is it important that it's server side?
<gildor> thelema: this will be a POC, until I have time to create the interface
<thelema> I'll just do it client side for now, I guess.
<gildor> thelema: server side, because it will be easier for people to edit, but you can do it client side and upload the result
<thelema> are you sure? text file editing is pretty mature technology client side...
<thelema> hmm, it's not too bad to just expose the _oasis as a text field and reparse... is it?
<gildor> thelema: on the long term, this will also allow to fix simple stuff like description
<gildor> thelema: yes, this is just a matter of textarea + submit
<thelema> short term solution: one big textarea for the entire _oasis file?
<gildor> thelema: but you also have checks to do
<thelema> sure, if it doesn't parse, give errors and ask for resubmit..
<gildor> thelema: e.g. if you fix description, no need to repackage
<thelema> what edits would need repackaging?
<gildor> thelema: indeed, this is what I intend to
<gildor> thelema: everything that involves deps/build
<thelema> because the revision number must be bumped?
<gildor> thelema: in fact, you should consider what doesn't need to repackage: change in description, synopsis, author, copyright
<gildor> thelema: yes
<gildor> thelema: if the way it builds change, we should bump the version
<thelema> version 1: only allow edits that don't require repackaging
<thelema> and I'm not sure about the deps issue - if the deps change and it still compiles...
<thelema> maybe not a version bump
<gildor> thelema: bah, version change is not a big deal with odb ;-)
<thelema> true, I'm just trying to save you work in the long run - having a million versions of each package... :(
<thelema> and these changes *need* to be made upstream, otherwise we'll have the GODI/Debian different-META file problem
<gildor> thelema: million of version, I don't think it will be the case, maybe 2 or 3 versions probably
<thelema> editing oasis files in the oasis-db doesn't seem like a good strategy if the oasis files are the canonical "how to install"
<gildor> thelema: oasis-db stores _oasis.pristine and _oasis to be able to make a diff of them
<thelema> so you can test your changes easily, and submit the diff back to the maintainer? hmmm...
impy has joined #ocaml
oriba has left #ocaml []
lopex has quit [Ping timeout: 240 seconds]
lopex has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
mnabil has joined #ocaml
hto has joined #ocaml
joelr has joined #ocaml
joelr has quit [Client Quit]
<thelema> is it possible to get a stack trace for #! ocaml scripts?
<hcarty> thelema: It is when using ocamlscript, but I don't think it is (without patching OCaml) when using the ocaml binary
<rproust> thelema: wouldn't "let () = Printexc.record_backtrace true;;" just after the #!ocaml work?
<hcarty> thelema: Someone did release a patch to allow backtraces in the toplevel
<rproust> (I'm not sure I got what you meant though…)
<rproust> rproust: no it wouldn't work
<thelema> rproust: it doesn't work for me.
<thelema> hcarty: thanks. I guess I should look into ocamlscript
<hcarty> thelema: I highly recommend it. It's a very nice tool.
<thelema> it'd be great except I won't depend on it for odb
<thelema> back to old school debugging then...
<hcarty> thelema: You could use it for odb development, then fall back to bare ocaml once everything is done
<thelema> seems like a bunch of hassle to track down a not-found exception
<hcarty> I'm thinking three or four Not_found's in to the future :-)
<hcarty> But it's just a suggestion - it really may not be worth it
<hcarty> On a tangent - ocamlscript would be a wonderful thing to use in OCaml tutorials. It avoids many of the compilation troubles many OCaml beginners can have.
<hcarty> Having a four or five line "Hello world!" which uses Batteries and requires no explicit compilation step could remove a few hurdles.
joewilliams_away is now known as joewilliams
<thelema> hcarty: one way to deal with compilation troubles is to unify dependency handling between the toplevel and compiled programs
<thelema> i.e. support #use (and #require) for compiled programs
ftrvxmtrx has quit [Remote host closed the connection]
ftrvxmtrx has joined #ocaml
<dcolish> i have found the requirement of myocamlbuild and or _tags to be a little rough, especially when trying to link against C
avsm has quit [Quit: Leaving.]
* thelema would just like at least some syntax to be changable based on *in-file* incantations. This means changing the parsing strategy, though.
thelema has quit [Ping timeout: 240 seconds]
ymasory has joined #ocaml
romanoffi has quit [Quit: Leaving.]
ocp has quit [Ping timeout: 258 seconds]
eikke has quit [Ping timeout: 252 seconds]
thelema has joined #ocaml
<hcarty> thelema: ocamlscript could potentially be used as a basis for that kind of operation
Snark has quit [Quit: Ex-Chat]
jderque has joined #ocaml
ocp has joined #ocaml
eikke has joined #ocaml
pdhborges has joined #ocaml
pdhborges has left #ocaml []
eikke has quit [Ping timeout: 240 seconds]
apropos has joined #ocaml
<thelema> hcarty: its support of findlib does produce a 90% solution. I wonder how/if it works with camlp4
<hcarty> thelema: It works well. I believe it enables camlp4 by default
<hcarty> I've used ocamlscript with the syntax extensions from Batteries, for example
apropos has quit [Ping timeout: 240 seconds]
<hcarty> On a side note - the syntax Yaron Minsky shows in the comment bluestorm linked to from the Batteries list is rather nifty looking
mnabil has quit [Ping timeout: 240 seconds]
<thelema> I'm not so sure about those ideas, but maybe they just don't solve problems I know I have.
<hcarty> I like the idea of <:foo< >>-style delimited extensions without camlp4
<hcarty> But I'm not familiar enough with the details of either camlp4 or what they are proposing to properly judge their merits.
ikaros has joined #ocaml
<hcarty> thelema: http://codepad.org/NIhnOkyi -- A brief ocamlscript + Batteries + camlp4 example
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
philtor has joined #ocaml
<hcarty> thelema: Unless I misunderstood and you meant bluestorm's ideas rather than those from the blog post
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
<thelema> I don't see how annotating the AST and doing AST -> AST translation gets me to my goal of having all the context for compiling a chunk of code *inside* the file that code's in.
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
<thelema> hcarty: the ocamlscript example is useful, and maybe it should go here: https://github.com/ocaml-batteries-team/batteries-included/wiki/Getting-started\
<thelema> (minus the \)
mnabil has joined #ocaml
jamii has quit [Quit: Leaving]
<thelema> but ocamlscript isn't compatible with either the toplevel or the normal compilation process (ocamlbuild, etc) needed for large-project compilation
mnabil has quit [Read error: Connection reset by peer]
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
npouillard has quit [Quit: leaving]
mnabil has joined #ocaml
mnabil has quit [Read error: Connection reset by peer]
<hcarty> I'll add the ocamlscript example to the wiki
<hcarty> ocamlscript is more an ocamlbuild replacement for smaller projects (maybe up to a few files) than it is something you would us in addition to ocamlbuild
<hcarty> I've started a lot of projects with ocamlscript, then transitions to ocamlbuild once the initial idea was properly tested
hto has quit [Ping timeout: 276 seconds]
olauzon has joined #ocaml
munga has quit [Read error: Operation timed out]
brendan has quit [Quit: leaving]
brendan has joined #ocaml
<hcarty> thelema: I've added three examples using ocamlscript - one with vanilla Batteries, one with a syntax extension and one with threaded Batteries (but no thread use)
avsm has joined #ocaml
<flux> hmph, fedora has woefully few ocaml libraries in its repositories
<thelema> flux: odb might make that a non-issue
<dcolish> is odb a potential replacement for godi?
<thelema> dcolish: I don't think of it that way - it assumes ocaml and findlib as prerequisites, unlike godi
<thelema> dcolish: but it does do the whole make/install/dep handling dance like GODI
<thelema> It's currently set to use oasis-db's package repo as backend, which needs much love in terms of uploading properly tagged packages
<flux> yeah, godi covers also non-ocaml libraries. it is sort of a distribution inside an os in itself. similar to cygwin.
<flux> whereas I understand oasis is more akin to CPAN
<flux> although
<dcolish> ah ok
<flux> afaik, you can upgrade Perl from CPAN as well..
<thelema> flux: true.
<dcolish> i've always treated GODI like a PyPi style dist tool and run into trouble
philtor has quit [Ping timeout: 264 seconds]
<thelema> I imagine GODI doesn't interact so well with things outside the GODI world, whereas odb is designed to have no internal state of its own. (no package database)
<thelema> that said, godi will re-compile all your ocaml libraries when you upgrade ocaml releases
<thelema> odb doesn't have a way to do this at the moment
<flux> I guess META should be enough to know what to recompile?
<thelema> (and I can't think of any way to do this)
<dcolish> i'm ok with that, i think a simple package installer is extremely useful. the more complex distro-style management tools are always tougher to use and write packages for
<thelema> I guess I could just try to force-reinstall every findlib package
<flux> thelema, hm, ocamlfind will just give you a list of packages, retrieve&recompile?-)
<flux> maybe there should be a database
<thelema> somehow I don't like that solution, but I guess it would work...
<flux> or atleast some flag such as 'installed by oasis'
<flux> could be distributed similarly to the META files
<thelema> odb currently supports force installs (although this doesn't remove the old package), it could manually replace packages given a list of them
impy has quit [Quit: impy]
<hcarty> thelema: A 60% solution could be to provide a way to have odb dump a command line which would replicate the currently installed packages
<hcarty> thelema: For example, "ocaml odb.ml --replay" could print "ocaml odb.ml batteries camomile ..."
<hcarty> It's probably not a pressing issue at this point in odb's development
<thelema> ah, that's a nice idea. it could take the list of packages available on the server and the list of installed packages, intersect them and print a command for the rest.
<thelema> s/the rest/those/
eikke has joined #ocaml
impy has joined #ocaml
npouillard has joined #ocaml
npouillard has quit [Read error: Connection reset by peer]
npouillard has joined #ocaml
npouillard has left #ocaml []
fremo__ has quit [Ping timeout: 248 seconds]
fremo__ has joined #ocaml
fremo__ has quit [Ping timeout: 240 seconds]
avsm has quit [Quit: Leaving.]
fremo__ has joined #ocaml
<jonafan> ocamljs is crazy
<sheets> jonafan: how's that?
<jonafan> well, maybe it's not crazy, but i don't think it's worth my efforts to make class types for so much stuff
<adrien> seeing the backlog, godi is really stable and actually works well with things from outside godi
<sheets> class types for so much stuff? are you wrapping some javascript?
waern_ has quit [Ping timeout: 252 seconds]
<jonafan> well, i'm trying to do some webgl stuff
fremo__ has quit [Ping timeout: 240 seconds]
<jonafan> and the included class types only work for 2d drawing contexts
pdhborges has joined #ocaml
pdhborges has left #ocaml []
<thelema> adrien: good to know about godi.
<jonafan> i know i don't have to redo the entire webgl spec, but there's a lot of matrix stuff
<jonafan> a lot of stuff i need to tell ocamljs about
<sheets> jonafan: yes. you will either need to begin the bindings (and write the class types) or write a little bit of javascript to deal with the stateful nastiness that is GL and shovel model parameters into it from the ocaml
<sheets> jonafan: matrix stuff? i only know of the uniform types?
<jonafan> there's a matrix library i'm using
<jonafan> i suppose i could/should rewrite it in ocaml
hto has joined #ocaml
<jonafan> further complicating matters, i'm relatively clueless about GL
<sheets> you could wrap it in ocaml using inline js if that is easier to do piecemeal than writing class types
fremo__ has joined #ocaml
<hcarty> adrien: I agree. It's just a little heavy to get setup initially.
<hcarty> adrien: That said, I haven't taken the time to learn the command line syntax for GODI's tools. My guess is that doing everything through godi_console slows me down.
<adrien> yeah, mostly because you have to wait 15 seconds every time you load it probably ;p
<hcarty> adrien: The biggest downside to GODI is that its packages are rather heavy. godiva helps, but there is still a fair amount of effort involved.
<adrien> I've done my first godi package and found it OK (although I started with godiva, and had to read a notable amount of doc), but now I'm not sure how to actually submit it (and I don't have enough time to handle that well right now but that's another story)
fremo__ has quit [Ping timeout: 240 seconds]
jderque has quit [Quit: leaving]
<thelema> adrien: I'm in a similar situation - to get odb working with the oasis backend, I'll have to create _oasis files for a number of packages I don't maintain.
<thelema> And I'm no _oasis expert.
<adrien> worse is probably when you want the "make install" to do something that the official package doesn't do =/
<thelema> Yup, packages that don't provide a findlib-enabled make target are going to be a problem
<adrien> pretty much
fremo__ has joined #ocaml
<adrien> (oh, need sleep)
<thelema> luckily there's few of them, and since I'm creating new tarballs for them, I'll hack that in somewhere
impy has quit [Quit: impy]
<adrien> yeah, fewer and fewer, and I guess that oasis/* will convert the remaining people
<adrien> q
<mehdid> do anyone knows how could I find the source of a GODI package?
<mehdid> (and preferably, its svn history too)
<thelema> mehdid: what package?
impy has joined #ocaml
<mehdid> ocaml itself
<mehdid> and what about patches applied to the source?
fremo__ has quit [Ping timeout: 276 seconds]
<mehdid> or there are none?
<thelema> godi patches to ocaml source?
<mehdid> yes
<adrien> iirc, they have to be named "patch-[a-z]{2}-${somename}.patch", should help you find them
<adrien> and they should be directly within the godi package's source
<mehdid> oh, nice, thanks!
<mehdid> but, it doesn't seem to contain the patches mentioned by gerd though
<mehdid> oh, I've been blind. He said "not released yet".
yezariaely has joined #ocaml
cynddl has joined #ocaml
<cynddl> bonjour/hi
<thelema> hi
fremo__ has joined #ocaml
fremo__ has quit [Ping timeout: 260 seconds]
pdhborges has joined #ocaml
pdhborges has quit [Client Quit]
ymasory has quit [Quit: Leaving]
fremo__ has joined #ocaml
<zorun> hi cynddl
philed has joined #ocaml
fremo__ has quit [Ping timeout: 246 seconds]
<bitbckt> is ocaml-data-notation compatible with 3.12.0? I'm getting camlp4 type errors on build.
<bitbckt> http://gist.github.com/954236 <- like this
pdhborges has joined #ocaml
<cynddl> zorun: hi ^^
<bitbckt> cynddl: aha! thanks. :)
<bitbckt> haha... that puts me in dependency hell.
<bitbckt> I need v0.0.3; that's a version I'm attempting to build, above.
yezariaely has quit [Quit: Leaving.]
<bitbckt> gildor: any hints?
ikaros has quit [Quit: Leave the magic to Houdini]
<bitbckt> oh, it's because I have type-conv v2.3.0.
fremo__ has joined #ocaml
<bitbckt> vivanov filed a bugged already. :)
<bitbckt> bug*
<gildor> bitbckt: no time to have a look at it, but since Debian upgrade to 3.12, I will have to fix it soon
fremo__ has quit [Ping timeout: 248 seconds]
<bitbckt> gildor: okay. thanks.
ymasory has joined #ocaml
ymasory has quit [Remote host closed the connection]
ymasory has joined #ocaml
olauzon has quit [Quit: olauzon]
fremo__ has joined #ocaml
ymasory has quit [Remote host closed the connection]
ymasory has joined #ocaml
thomasga has quit [Quit: Leaving.]
ocp has quit [Ping timeout: 246 seconds]
edwin has quit [Remote host closed the connection]
Yoric has quit [Quit: Yoric]
eikke has quit [Ping timeout: 240 seconds]
Cyanure has quit [Remote host closed the connection]
impy has quit [Quit: impy]
lopex has quit [Ping timeout: 260 seconds]
jonafan has quit [Quit: Leaving]
lamawithonel has joined #ocaml
lopex has joined #ocaml
jonafan has joined #ocaml
impy has joined #ocaml
Amorphous has quit [Ping timeout: 276 seconds]
Amorphous has joined #ocaml
fremo__ has quit [Quit: leaving]
lamawithonel has quit [Ping timeout: 240 seconds]
munga has joined #ocaml
pdhborges has quit [Quit: Leaving.]
dnolen has joined #ocaml