gildor changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 3.12.1 http://bit.ly/nNVIVH
sepp2k has quit [Remote host closed the connection]
arubin has joined #ocaml
destrius has joined #ocaml
scrappy_doo_ has joined #ocaml
Drakken has quit [Ping timeout: 256 seconds]
Modius has joined #ocaml
Modius_ has quit [Ping timeout: 260 seconds]
ikaros has quit [Quit: Ex-Chat]
dnolen has joined #ocaml
sebz has joined #ocaml
Modius has quit [Read error: Connection reset by peer]
Modius has joined #ocaml
ulfdoz_ has joined #ocaml
ulfdoz has quit [Ping timeout: 245 seconds]
ulfdoz_ is now known as ulfdoz
arubin has quit [Quit: arubin]
emmanuelux has quit [Remote host closed the connection]
mcclurmc has quit [Excess Flood]
mcclurmc has joined #ocaml
jimmyrcom has quit [Ping timeout: 248 seconds]
iris1 has quit [Ping timeout: 255 seconds]
schme has quit [Read error: Operation timed out]
iris1 has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
scrappy_doo_ has quit [Quit: Easy as 3.14159265358979323846...]
schme has joined #ocaml
schme has quit [Changing host]
schme has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
iris1 has quit [Ping timeout: 260 seconds]
sebz has joined #ocaml
sebz has quit [Client Quit]
sebz has joined #ocaml
rntz has quit [Ping timeout: 260 seconds]
rntz has joined #ocaml
arubin has joined #ocaml
dnolen has quit [Quit: dnolen]
haelix has quit [Ping timeout: 240 seconds]
haelix has joined #ocaml
arubin has quit [Quit: arubin]
EmmanuelOga has quit [Ping timeout: 252 seconds]
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
sebz has quit [Client Quit]
sebz has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
sebz has joined #ocaml
BiDOrD_ has joined #ocaml
BiDOrD has quit [Ping timeout: 248 seconds]
g0dmoney- has quit [Ping timeout: 258 seconds]
ygrek has joined #ocaml
g0dmoney- has joined #ocaml
Associat0r has joined #ocaml
Associat0r has quit [Changing host]
Associat0r has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
everyonemines has joined #ocaml
sebz has joined #ocaml
wishi has joined #ocaml
Associat0r has quit [Quit: Associat0r]
ikaros has joined #ocaml
ygrek has quit [Ping timeout: 248 seconds]
ttamttam has joined #ocaml
edwin has joined #ocaml
Associat0r has joined #ocaml
Associat0r has quit [Changing host]
Associat0r has joined #ocaml
Snark has joined #ocaml
Associat0r has quit [Quit: Associat0r]
g0dmoney- has quit [Ping timeout: 258 seconds]
avsm has joined #ocaml
asmanur has quit [Ping timeout: 260 seconds]
sebz has quit [Quit: Computer has gone to sleep.]
asmanur has joined #ocaml
asmanur has quit [Client Quit]
sebz has joined #ocaml
yezariaely has joined #ocaml
ygrek has joined #ocaml
avsm has quit [Quit: Leaving.]
sebz has quit [Quit: Computer has gone to sleep.]
everyonemines has quit [Quit: Leaving.]
sebz has joined #ocaml
sebz has quit [Client Quit]
sebz has joined #ocaml
sebz has quit [Client Quit]
wieczyk has left #ocaml []
_andre has joined #ocaml
BiDOrD_ has quit [Read error: Operation timed out]
BiDOrD has joined #ocaml
ygrek has quit [Ping timeout: 248 seconds]
g0dmoney- has joined #ocaml
Pepe_ has quit [Ping timeout: 240 seconds]
destrius has quit [Quit: Leaving.]
Pepe_ has joined #ocaml
Associat0r has joined #ocaml
Associat0r has quit [Changing host]
Associat0r has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
ztfw has joined #ocaml
liteblackk has joined #ocaml
liteblackk has quit [Client Quit]
ccasin has quit [Ping timeout: 258 seconds]
Drakken has joined #ocaml
BiDOrD has quit [Remote host closed the connection]
ccasin has joined #ocaml
BiDOrD has joined #ocaml
metasyntax|work has quit [Quit: WeeChat [quit]]
oriba has joined #ocaml
edwin has quit [Remote host closed the connection]
mcclurmc has quit [Excess Flood]
mcclurmc has joined #ocaml
ikaros has joined #ocaml
edwin has joined #ocaml
emmanuelux has joined #ocaml
avsm has joined #ocaml
EmmanuelOga has joined #ocaml
dnolen has joined #ocaml
Associat0r has quit [Quit: Associat0r]
jimmyrcom has joined #ocaml
mbac has quit [Ping timeout: 260 seconds]
mbac has joined #ocaml
iris1 has joined #ocaml
zorun has joined #ocaml
sepp2k has joined #ocaml
raichoo has joined #ocaml
ikaros_ has joined #ocaml
g0dmoney- has quit [Changing host]
g0dmoney- has joined #ocaml
ikaros_ has quit [Client Quit]
musically_ut has joined #ocaml
<musically_ut> Can anyone please give me an example on how to declare a (virtual) class in a module signature (in a .mli file)?
<thelema> musically_ut: best way is to just declare the virtual class in your .ml file and use `ocamlc -i` to print the interface for your ml file
<musically_ut> thelema, oh, I did not know about that.
<musically_ut> I'll do that, thanks!
<thelema> also, note that .mli files are not needed (as their information can be generated automatically), so this problem may be moot
<musically_ut> thelema, I was trying to declare the signature of modules before filling in the code. (The way I would do in C++ header files)
<thelema> musically_ut: in ocaml, this process isn't necessary
<thelema> or all that helpful
dnolen has quit [Quit: dnolen]
<musically_ut> thelema, I'll try to get the signature information as well as the documentation in the .ml files itself then.
<musically_ut> Thanks.
sepp2k has quit [Remote host closed the connection]
ikaros has quit [Quit: Ex-Chat]
g0dmoney- has quit [Ping timeout: 248 seconds]
iris1 has quit [Read error: Connection reset by peer]
avsm has quit [Quit: Leaving.]
Anarchos has joined #ocaml
iris1 has joined #ocaml
larhat1 has quit [Quit: Leaving.]
mcclurmc has quit [Excess Flood]
mcclurmc has joined #ocaml
ikaros has joined #ocaml
f[x] has quit [Ping timeout: 244 seconds]
raichoo has quit [Quit: leaving]
f[x] has joined #ocaml
<adrien> NaCl: subscribed to the godi-list?
<NaCl> no
<adrien> NaCl: --as-needed popping up again
<NaCl> heh
<adrien> for pcre of course
<adrien> oh, hadn't seen that: "Also, there was already a fix in the pcre package against this, but the patch was dropped by accident."
ganjahtronic has quit [Ping timeout: 256 seconds]
<NaCl> Even better
ganjahtronic has joined #ocaml
ganjahtronic has quit [Ping timeout: 260 seconds]
<f[x]> lol
avsm has joined #ocaml
<f[x]> also ocamlopt in 3.12.x puts -ccopt arguments at different place than 3.11.x and it causes some headache
<f[x]> when paired with new defaul ld behaviour, that is
sebz has joined #ocaml
metasyntax|work has joined #ocaml
jlouis has quit [Ping timeout: 244 seconds]
jlouis has joined #ocaml
avsm1 has joined #ocaml
avsm has quit [Ping timeout: 240 seconds]
Drakken has quit [Ping timeout: 256 seconds]
Cyanure has quit [Ping timeout: 240 seconds]
haelix has quit [Ping timeout: 276 seconds]
haelix has joined #ocaml
probst has joined #ocaml
Associat0r has joined #ocaml
Cyanure has joined #ocaml
antoineB has joined #ocaml
<antoineB> hello, i try to compile opa and i get "Error: Unbound module Cryptokit" ?
<antoineB> what could it be from?
<antoineB> i didn't have skills in ocaml
<f[x]> aptitude install libcryptokit-ocaml-dev
<antoineB> already done
<adrien> hcarty: about xstrp4, I have a "string option" and I want to write "BuildDepends: ${library.build_depends}" inside a here-quotation (library.build_depends is of type "string option")
<f[x]> antoineB, no idea then
<thelema> is cryptokit installed with ocamlfind support?
<thelema> if so, `ocamlfind list | grep cryptokit`
<antoineB> (version: 1.3)
<hcarty> adrien: If you use Batteries then you can use the Batteries printing functions
<thelema> antoineB: it would seem that cryptokit is installed...
<thelema> antoineB: what's the exact command that's failing?
<hcarty> adrien: ex. "${foo, Option.print String.print}"
<antoineB> thelema: make
<antoineB> Cryptokit.transform_string (Cryptokit.Base64.encode_compact ()) str
<thelema> antoineB: make calls the ocaml compiler, and the ocaml compiler gives the error. what's the ocamlopt command that fails?
<antoineB> there error appear here
<hcarty> adrien: Or you can create some similar, shorter equivalents.
<adrien> hcarty: but I have the "BuildDepends: " prefix that I only want to print if the option is Some x
<hcarty> adrien: If you are using Batteries then you will want to use Batteries-like %a printers, if you are not then you will want stdlib-like %a printers.
<hcarty> Ah. You could do something more complicated to make it work inline, but you may be better off lifting that out of the interpolation.
<adrien> ok, I was wondering whether there was something or not and was heading that way
<thelema> adrien: let print_dep oc = function None -> () | Some d -> fprintf oc "BuildDepends: %s\n" d
<adrien> yup; I was expecting to stay with the nice here-quotation of xstrp4
<adrien> but not a big deal
<hcarty> adrien: If you have a suggestion for how to do it and a clean patch I'll certainly take a look :-)
<adrien> ;-)
<hcarty> I've had instances where I've wanted to do something similar, so it's probably a reasonable addition if it can be done cleanly.
<thelema> hcarty: maybe just conditional printing: "%{BuildDepends:}" (Option.is_some dec)
<adrien> maybe some like ifdefs or so
ttamttam has quit [Quit: Leaving.]
<adrien> or thelema's syntax
sebz has quit [Quit: Computer has gone to sleep.]
<thelema> I'm sure the syntax could be greatly improved
<antoineB> thelema: https://gist.github.com/1331352 this help?
<thelema> antoineB: yes, the command I wanted was the last "/usr/bin/ocamlopt" call
<thelema> antoineB: although it doesn't help as I hoped.
<adrien> actually, maybe "BuildDepends: ", with no value, is valid for oasis
nordoff has joined #ocaml
<thelema> antoineB: maybe they can help you better in #opalang
<antoineB> they say me to see on #ocaml :/
<thelema> antoineB: :(
<antoineB> i will send mail to opadev
<antoineB> thanks thelema
<thelema> antoineB: the problem you're having is that a dependency isn't being found
<thelema> it's installed on your system, but maybe the plugin config isn't correct for building it.
<thelema> we could build that single plugin by hand, pointing it to its dependency, but this likely doesn't fix the root problem
<antoineB> the bug can come from "configure" commands?
<thelema> possibly - does ./configure detect cryptokit?
nordoff has quit [Remote host closed the connection]
<antoineB> yes
nordoff has joined #ocaml
<thelema> antoineB: something too complex for me to debug quickly here is going on in their generation of a myocamlbuild.ml file
Drakken has joined #ocaml
Drakken has quit [Quit: We be chillin - IceChat style]
Kakadu has joined #ocaml
Drakken has joined #ocaml
<Kakadu> hello!
<Kakadu> who knows what the function caml_send0 is?
<thelema> my best guess involves sending a message to an object
<thelema> (i.e. calling a method)
<thelema> Kakadu: what version of ocaml?
<Kakadu> 3.12.1
<thelema> odd, grepping the ocaml source tree only finds binary files with that symbol
<Kakadu> TT
* thelema tries again on the 3.12.1 tree
<thelema> instead of the dev tree
<thelema> ah, caml_send0 is a generated function
<thelema> asmcomp/cmmgen.ml: Cconst_symbol("caml_send" ^ string_of_int arity) ::
<Kakadu> I'm doing some magic: I'm sending ocaml object to C++ and call caml method from there
<Anarchos> Kakadu maybe you can read the source code ?
<Kakadu> Anarchos: cmmgen.ml?
ttamttam has joined #ocaml
<Anarchos> Kakadu it seems related to object but no idea of the exact meaning
<thelema> there's also a reference to caml_send in asmcomp/emitaux.ml
avsm1 has quit [Ping timeout: 252 seconds]
<Kakadu> maybe I should write something like caml_register_global here: https://github.com/Kakadu/lablqt/blob/new2/inher/cstubs.cpp#L72 ?
<thelema> Kakadu: no idea, sorry
ttamttam has quit [Quit: Leaving.]
Snark has quit [Quit: Quitte]
ygrek has joined #ocaml
antoineB has quit [Quit: Lost terminal]
ttamttam has joined #ocaml
sebz has joined #ocaml
<_habnabit> urggggghhhhhhh. a tarball's md5sum changed out from underneath godi and updating doesn't resolve it.
<adrien> ounit?
<_habnabit> anyone know how to work around this? godi_perform -build doesn't seem to respect NO_CHECKSUM=yes
<_habnabit> and yes
<adrien> the maintainer hasn't updated the package I guess
<adrien> so it depends on what you want to do
<_habnabit> you'd think that if there were changes made, it would be uploaded with a different name
<adrien> not always
<adrien> unfortunately
<_habnabit> well, honestly, I don't really care about checksums.
<adrien> edit $PREFIX/build/godi/godi-ounit/distinfo
<_habnabit> yeah, except this is for a build script
yezariaely has left #ocaml []
<_habnabit> I'd rather not if I can avoid it
<adrien> you can use the command-line tools to do the work
<_habnabit> (it downloads godi, installs it, installs godi packages, and then installs some stuff from oasis.)
<adrien> I don't think you can actually pass NO_CHECKSUM=yes through godi_console
<adrien> well, it looks like the tarball change happened today or yesterday
<adrien> so maybe give it a bit more time
<_habnabit> well, the simplest solution is really to use the oasis ounit, since that seems like it can be counted on more reliably
<_habnabit> ah well. lunchtime anyway
_andre has quit [Quit: leaving]
nordoff has quit [Remote host closed the connection]
_andre has joined #ocaml
avsm has joined #ocaml
nordoff has joined #ocaml
_andre has quit [Client Quit]
avsm1 has joined #ocaml
avsm has quit [Read error: Connection reset by peer]
ttamttam has quit [Quit: Leaving.]
sepp2k has joined #ocaml
avsm has joined #ocaml
Kakadu has quit [Quit: Konversation terminated!]
avsm1 has quit [Ping timeout: 240 seconds]
scrappy_doo_ has joined #ocaml
Drakken has quit [Ping timeout: 256 seconds]
metasyntax|work has quit [Quit: WeeChat [quit]]
<adrien> gildor: ping, my "git push" for cowboy is failing with "remote: sendmail: 452 4.3.1 Insufficient system storage" (CIA-bot hook)
<adrien> rrrraaaaaaahhhhhhh
<adrien> I hate how the "old" xstrp4 makes it impossible to use the "file" identifier
oriba has quit [Quit: oriba]
nordoff has quit [Ping timeout: 245 seconds]
nb-ben has joined #ocaml
<nb-ben> the entire ocaml website does not contain one ocaml code sample for me to look at :(
<thelema> nb-ben: check the manual
joewilliams has quit [Excess Flood]
<adrien> it's the List module of the standard library
joewilliams has joined #ocaml
<nb-ben> ok I see now
<nb-ben> thank you :P
lusory_ has joined #ocaml
lusory has quit [Ping timeout: 240 seconds]
<nb-ben> what are ocaml's bold ?strengths
<nb-ben> what are ocaml's bold strengths? *
<thelema> it's made from 99% win.
<thelema> it's a language where you can code using high level constructs that you make yourself and have very good performance doing so.
<adrien> expressive, static typing for type safety, type inference, fast code, good garbage collector (low memory usage usually), high portability, ...
<adrien> thelema said it so much better :P
lamawithonel_ has joined #ocaml
lamawithonel has quit [Read error: Connection reset by peer]
<nb-ben> I see
sepp2k has quit [Remote host closed the connection]
<adrien> oh, and an awesome community!
<thelema> I use ocaml for three reasons: 1) fast codegen (both time to compile and speed of compiled binary), 2) concise code (much code on my screen at once) and 3) strong typing to help find my mistakes
<thelema> we're working on the awesome community. OCaml is in a wierd place - too hard to understand for many users (who return to javaland) and not cutting-edge enough for other users (who go on to haskell) [warning: oversimplification used]
<adrien> I've done C++ and OCaml at roughly the same time on two separate projects; I was always worried with the C++ application because of crashes while I knew that the OCaml one wouldn't crash
<adrien> (it did crash a few times, maybe thrice at most)
<adrien> I don't think it's too hard to understand but we need to make it more attractive to make people a bit more motivated (quite often, people give up because they are _told_ it's too difficult for them)
<nb-ben> I see
<nb-ben> yes it does seem a little out of place when I look at it
<thelema> I argue we need polymorphic printing
<nb-ben> it's procedural right?
<thelema> nb-ben: the syntax is unusual, but not the real problem
<nb-ben> or can you define classes
<thelema> nb-ben: no, ocaml is primarily functional, with OO and procedural bits too
<thelema> yes, you can define classes
krktz_ has joined #ocaml
<thelema> but ocaml is more functional than procedural (despite having for and while loops)
avsm1 has joined #ocaml
krktz has quit [Remote host closed the connection]
avsm has quit [Read error: Connection reset by peer]
<thelema> values are immutable by default and functions are first-class values
<nb-ben> hmm
<nb-ben> see this structure of things is not very appealing for software design I think
<nb-ben> it's like PHP is accomplishing it all, only PHP is popular because of the web thing
<thelema> adrien: immutable values is a pretty hard idea for most people to program with.
<nb-ben> nobody uses PHP for anything but websites unless they just don't know how to program with anything else
<thelema> or they're crazy and want to just push the boundaries of what PHP can do, but yes.
<thelema> as far as PHP accomplishing it all, I don't see things the same way.
<_habnabit> (well, nobody should be using php for /anything/ other than maintenance of legacy php apps, but...)
<nb-ben> that's crazy not because they try to push the boundaries, but instead crazy because it's actually bad for it
<_habnabit> I don't see what point you're trying to make, though
<thelema> nb-ben: what's your point on PHP?
<_habnabit> 'this structure of things' ?
<adrien> thelema: I believe it's more that people come from another background, are used to some way of doing something, and are simply surprised and left wondering
<nb-ben> like having it all OOP suddenly
<_habnabit> 'it' ?
<nb-ben> I think it's retarded, why would you make OOP php apps
<adrien> but if they did some actual code, trying to do ocaml, it'd be different
<nb-ben> okay I'll just say it explicitly
<_habnabit> well, yes, php's 'OO' stuff is hideous and tacked on
<thelema> nb-ben: in theory, OOP scales to larger applications than procedural.
<nb-ben> I think people like having this one-straightforward structured way of doing thing
<nb-ben> thelema: that PHP webpage is gonna live for no longer than half a second or your webserver is probably crashing
<thelema> nb-ben: thus python.
<nb-ben> what's the point of creating objects and spending so much for initializing this big API
<_habnabit> are you still talking about php?
<nb-ben> being drawn to it :p
<_habnabit> can we talk about ocaml instead? php isn't really relevant
<nb-ben> been using it as an example to demonstrate inconsistency with structure
<thelema> nb-ben: for being multi-paradigm, ocaml is quite consistent in structure.
<nb-ben> I see
<adrien> could also be that it lets you chose the approach you want depending on the task
<thelema> that said, most people omit the OO part, leaving a simple, consistent structure.
<_habnabit> the OO stuff is useful for having an abstract representation of something that's compatible between libraries without needing to link against them, though
ztfw has quit [Remote host closed the connection]
<nb-ben> hmm
avsm1 has quit [Ping timeout: 252 seconds]
Cyanure has quit [Ping timeout: 240 seconds]
g0dmoney- has joined #ocaml
avsm has joined #ocaml
<adrien> _habnabit: ounit in godi should be fixed: https://godirepo.camlcity.org/pipermail/godi-list/2011-November/003228.html
g0dmoney- has quit [Changing host]
g0dmoney- has joined #ocaml
ygrek has quit [Ping timeout: 248 seconds]
avsm1 has joined #ocaml
avsm has quit [Ping timeout: 252 seconds]
edwin has quit [Remote host closed the connection]
g0dmoney- has quit [Ping timeout: 260 seconds]
g0dmoney- has joined #ocaml
Anarchos has quit [Read error: Connection reset by peer]
g0dmoney- has quit [Ping timeout: 252 seconds]
ski has quit [Ping timeout: 255 seconds]
g0dmoney- has joined #ocaml
g0dmoney- has quit [Changing host]
g0dmoney- has joined #ocaml
ski has joined #ocaml
nordoff has joined #ocaml
nordoff has quit [Remote host closed the connection]
sepp2k has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
ikaros has quit [Quit: Ex-Chat]
Amorphous has quit [Ping timeout: 240 seconds]
sebz has joined #ocaml
Amorphous has joined #ocaml
ikaros has joined #ocaml
oriba has joined #ocaml
scrappy_doo_ is now known as Drakken
probst has quit [Quit: probst]
dnolen has joined #ocaml
<adrien> I'm using oasis and I have .c files that must not be compiled but must instead be #include'd, meaning they have to be treated like .h files; is that possible?
<adrien> well, hopefully, lablgtk's varcc allows changing the name
<adrien> (of the output file)