<thelema>
hcarty: other option is to get vcs support in odb - ocaml odb.ml github/batteries
ankit9 has quit [Quit: Leaving]
<hcarty>
thelema: All packages could be managed under a single repository if you want to go all-out. That repository could be cloned anywhere, providing a mirror.
<hcarty>
It may make sense to split the .tar.gz repository from the metadata repository
Associat0r has joined #ocaml
ttamttam has quit [Quit: Leaving.]
<thelema>
hmm, yes - the metadata repo could be a simple git repo, and the tarball links could have absolute URLs instead of just filenames (and the assumption of relative URLs)
<thelema>
although this would add git to the list of deps for odb...
<thelema>
maybe github can allow downloading tarballs without needing a git client
<thelema>
err, tarballs of the metadata repo
<thelema>
auto-creation of metadata would be harder in this model - it wouldn't be just uploading a tarball with an oasis file
Boscop has joined #ocaml
avsm has joined #ocaml
<hcarty>
I'm fairly sure the oasis-db server code is available. It may be reasonable to continue using that as the primary metadata creation system.
kuscotopia has joined #ocaml
eikke has quit [Ping timeout: 240 seconds]
<kuscotopia>
I am building a series of C shared libraries into a cma, which I then to ocamlmktop in the hopes of making a toplevel that can use these functions. Is there anything special I need to do to call functions from these libraries once I enter this toplevel interactively?
<thelema>
kuscotopia: I don't think so - as long as you do the ocamlmktop properly so your stubs are linked in
<thelema>
although if there were something special that was needed, the lablgtk build scripts would do it to make the lablgtk toplevel
malc_ has quit [Ping timeout: 244 seconds]
<hcarty>
kuscotopia: I think OCamlMakefile can automate most of the process if you have trouble getting it working for your code
<adrien>
I think I(/we) can help for mirroring
<thelema>
adrien: that'll be great.
<adrien>
nazi admin (who's not in this channel) but usually it's ok
avsm has quit [Quit: Leaving.]
<kuscotopia>
hmm...then something must not be working..when I enter the name of an enternal function..It just comes back as an undefined type. *Sigh* More coffee then I try again.
<thelema>
undefined *type*?
<kuscotopia>
Is there a way of viewing which stubs are defined?
<kuscotopia>
sorry..I meant undefined value.
<thelema>
ah, ok, that makes more sense.
<adrien>
thelema: what are the requirements on the server?
<thelema>
the C stubs aren't values, so maybe only something that lists the symbols defined in an executable (I'm blanking on which program does this)
<thelema>
adrien: HTTP. directories. That's it for a simple mirror.
<thelema>
adrien: all files are static, either text files or tarballs.
<thelema>
kuscotopia: as for knowing what ocaml values are defined - I think someone had a patch to the toplevel to do that, but it's not standard.
<adrien>
thelema: good then
<kuscotopia>
I can see the symbols in the shared library using nm...I will search around for that patch. Would be good to get a warm-fuzzy when they finally are visible at the top level.
<thelema>
kuscotopia: for your purposes, I don't see what such a patch would help - you know what symbol you're looking for.
ankit9 has joined #ocaml
<thelema>
kuscotopia: if it's not there, you failed to link something into the toplevel
<thelema>
at least I hope you know what symbol you're looking for
<kuscotopia>
heh, I don't have that luxury. I am trying to use Z3 in ocaml..they used camlidl to create the interface. I took there .mli/ml files and all required shared libraries and built them into a .cma
<kuscotopia>
I then build that into the toplevel
<kuscotopia>
(Z3 is a theorem prover)
<thelema>
the .mli files should give you symbol names, no?
<kuscotopia>
the mli only has some types defined..the ml has exported functions
<kuscotopia>
but they are undefined values as well :(
<kuscotopia>
exported = external
<thelema>
if the .mli file doesn't define any values, something is wrong.
<thelema>
unless the .mli and .ml aren't the same module
<thelema>
a .mli file with no values would hide any exported functions from the corresponding .ml
<kuscotopia>
Oops, I was mistaken..didn't look far enough down...the function I tried to call is declared in the mli as: "external mk_config : unit -> config = "camlidl_z3_Z3_mk_config"
<kuscotopia>
I get an unbound value when I try invoking it from my toplevel.
<thelema>
Did you use the module name? Foo.mk_config
<kuscotopia>
...oh...the mli/ml didn't wrap anything in a module...but Z3.mk_config works
<thelema>
then you have succeeded
<kuscotopia>
well...newbishness resolved for the moment. Thank you Thelema.
<thelema>
you're welcome.
larhat has quit [Quit: Leaving.]
emmanuelux has quit [Ping timeout: 240 seconds]
Snark has joined #ocaml
ttamttam has joined #ocaml
lopex has quit []
ak0s has joined #ocaml
ygrek has joined #ocaml
junsuijin has joined #ocaml
lopex has joined #ocaml
<gildor>
hcarty, thelema: my new job means 'almost' nothing to oasis
<gildor>
hcarty, thelema: I REALLY don't plan to drop it
<gildor>
hcarty, thelema: I will even resume my work on it while at google
<gildor>
(not for Google, just as a std OSS project on my free time)
<gildor>
thelema: odb mirror = rsync on /home/groups/oasis/ocsigen/dev/data
<gildor>
thelema: you'll get full dump of the SQL db + all tarballs/metadata
<f[x]>
gildor, google goes for caml?
<gildor>
f[x]: i'll need some time to convert them
<f[x]>
:)
<f[x]>
good luck
<gildor>
I think they are using haskell from time to time
<gildor>
(see Iustin Pop presentation at ICFP 2010)
<_habnabit>
yes, because 'fun' doesn't do pattern matching
oriba has joined #ocaml
<Dasuraga>
yeah that much I got, I just find it odd that this isn't mentioned in the book
<Dasuraga>
because the book makes it seem like fun x and function x are the same thing , or at least this is how I interpreted it
<_habnabit>
it's a rather misleading way to write it, yeah
<Dasuraga>
anyways, thanks for the clarification.
metasyntax|work has quit [Quit: WeeChat [quit]]
<everyonemines>
is there a performance penalty for function vs match x with ?
<_habnabit>
who cares
<hcarty>
everyonemines: I don't think so, but you'd have to look at the assembly/intermediate code to be sure
<everyonemines>
well I never use function anyway, because I find it less readable
<hcarty>
Dasuraga: fun can do pattern matching in some forms (the same way let can). For example, (fun (a, b) -> a + b) is pattern matching.
<hcarty>
But let and fun are limited to a single match case, while function and match allow for multiple cases.
ninegrid has joined #ocaml
<hcarty>
This is mostly guessing, but you can probably replace any instance of fun with function + some extra code; the same is likely true in reverse.
EmmanuelOga has quit [Ping timeout: 252 seconds]
maoli has joined #ocaml
eikke has quit [Ping timeout: 259 seconds]
maoli has quit [Quit: leaving]
fraggle_ has quit [Read error: Connection reset by peer]
ztfw has quit [Read error: Connection reset by peer]
avsm has joined #ocaml
edwin has quit [Remote host closed the connection]
hto has quit [Quit: Lost terminal]
everyonemines has left #ocaml []
ygrek has quit [Ping timeout: 248 seconds]
fschwidom has quit [Remote host closed the connection]
hto has joined #ocaml
ftrvxmtrx has joined #ocaml
junsuijin has quit [Remote host closed the connection]
fraggle_laptop has joined #ocaml
bobry has quit [Ping timeout: 258 seconds]
orbitz has quit [*.net *.split]
shachaf has quit [*.net *.split]
mattam has quit [*.net *.split]
orbitz has joined #ocaml
shachaf has joined #ocaml
mattam has joined #ocaml
ttblrs has quit [Ping timeout: 248 seconds]
shachaf has quit [Max SendQ exceeded]
shachaf has joined #ocaml
ttblrs has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 260 seconds]
bobry has joined #ocaml
EmmanuelOga has joined #ocaml
frasse has joined #ocaml
Amorphous has quit [Read error: Operation timed out]
lopex has quit [Ping timeout: 248 seconds]
EmmanuelOga has quit [Ping timeout: 248 seconds]
EmmanuelOga has joined #ocaml
Amorphous has joined #ocaml
raphscallion has joined #ocaml
frasse has quit [Ping timeout: 252 seconds]
raphscallion has quit [Client Quit]
raphscallion has joined #ocaml
raphscallion has quit [Client Quit]
avsm has quit [Quit: Leaving.]
ikaros has quit [Quit: Ex-Chat]
dnolen has joined #ocaml
ikaros has joined #ocaml
fraggle_laptop has quit [Remote host closed the connection]