adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 4.00.1 http://bit.ly/UHeZyT | http://www.ocaml.org | Public logs at http://tunes.org/~nef/logs/ocaml/
mattrepl has joined #ocaml
ftrvxmtrx has joined #ocaml
mattrepl has quit [Quit: mattrepl]
mcclurmc has quit [Ping timeout: 256 seconds]
lolcathost has joined #ocaml
peddie has joined #ocaml
pkrnj has quit [Quit: Computer has gone to sleep.]
PM has quit [Ping timeout: 246 seconds]
PM has joined #ocaml
pkrnj has joined #ocaml
mattrepl has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 255 seconds]
madroach has quit [Ping timeout: 248 seconds]
madroach has joined #ocaml
ftrvxmtrx has joined #ocaml
weie has joined #ocaml
fayden has quit [Ping timeout: 246 seconds]
mattrepl has quit [Quit: mattrepl]
fayden has joined #ocaml
lolcathost has quit [Quit: When I come back, please tell me in what new ways you have decided to be completely wrong.]
lolcathost has joined #ocaml
adotbrown has joined #ocaml
lolcathost has quit [Read error: Connection reset by peer]
lolcathost has joined #ocaml
Playground has joined #ocaml
lolcathost has quit [Ping timeout: 260 seconds]
Playground has quit [Ping timeout: 248 seconds]
jathd has joined #ocaml
ski has quit [Ping timeout: 260 seconds]
bobry has joined #ocaml
ski has joined #ocaml
ski has quit [Ping timeout: 255 seconds]
ftrvxmtrx has quit [Ping timeout: 276 seconds]
lolcathost has joined #ocaml
ftrvxmtrx has joined #ocaml
ski has joined #ocaml
tac has joined #ocaml
ski has quit [Ping timeout: 255 seconds]
ski has joined #ocaml
tac has quit [Ping timeout: 245 seconds]
watermind has quit [Ping timeout: 265 seconds]
lolcathost has quit [Ping timeout: 255 seconds]
ulfdoz has joined #ocaml
lolcathost has joined #ocaml
<jathd> Hi. The standard doc for seek_in, seek_out and their friends say that their behaviour is undefined on a file that is not a "regular file". What's that? Does it mean it works only on text files and not on binary files? Or maybe that it doesn't work on a file that's actually a terminal or something like that?
lolcathost has quit [Ping timeout: 240 seconds]
<adrien> it works for files on disk
<adrien> not for pipes, fifo, devices (well, devices, maybe, but I wouldn't bet on it)
<jathd> adrien: Ok, thanks. I guess it makes sense that you can't seek in a pipe.
lolcathost has joined #ocaml
<adrien> seek* functions most probably work just like their C counterparts but I've only user the seek* functions from Unix, not Pervasives (remember that you can't mix functions operating on channels and file_descr for a single file)
snarkyboojum has quit [Ping timeout: 252 seconds]
snarkyboojum has joined #ocaml
adotbrown has quit [Ping timeout: 276 seconds]
mye has joined #ocaml
wks has quit [Quit: Konversation terminated!]
ulfdoz has quit [Ping timeout: 264 seconds]
thomasga has joined #ocaml
ftrvxmtrx_ has joined #ocaml
lolcathost has quit [Ping timeout: 256 seconds]
lolcathost has joined #ocaml
lolcathost has quit [Ping timeout: 248 seconds]
lolcathost has joined #ocaml
chambart has joined #ocaml
ttamttam has joined #ocaml
lolcathost has quit [Ping timeout: 240 seconds]
gour has joined #ocaml
ttamttam has quit [Quit: ttamttam]
testcocoon has quit [Quit: Coyote finally caught me]
pkrnj has quit [Quit: Textual IRC Client: www.textualapp.com]
testcocoon has joined #ocaml
ttamttam has joined #ocaml
thomasga has quit [Quit: Leaving.]
djcoin has joined #ocaml
lolcathost has joined #ocaml
jbrown has joined #ocaml
Playground has joined #ocaml
lolcathost has quit [Read error: Connection reset by peer]
adotbrown has joined #ocaml
mika1 has joined #ocaml
cago has joined #ocaml
thomasga has joined #ocaml
thomasga has quit [Ping timeout: 276 seconds]
thomasga has joined #ocaml
mcclurmc has joined #ocaml
hkBst has joined #ocaml
hkBst has quit [Changing host]
hkBst has joined #ocaml
Kakadu has joined #ocaml
andreypopp has joined #ocaml
Kakadu has quit [Read error: Connection reset by peer]
Kakadu has joined #ocaml
hkBst has quit [Remote host closed the connection]
hkBst has joined #ocaml
hkBst has quit [Changing host]
hkBst has joined #ocaml
Playground has quit [Ping timeout: 240 seconds]
andreypopp has quit [Quit: sleep]
mcclurmc has quit [Ping timeout: 256 seconds]
Cyanure has joined #ocaml
myx has joined #ocaml
adotbrown has quit [Ping timeout: 255 seconds]
lolcathost has joined #ocaml
caligula_ has quit [Ping timeout: 246 seconds]
caligula_ has joined #ocaml
ocp has joined #ocaml
ontologiae has joined #ocaml
Yoric has joined #ocaml
lolcathost has quit [Ping timeout: 240 seconds]
mye has quit [Quit: mye]
ontologiae has quit [Ping timeout: 256 seconds]
mcclurmc has joined #ocaml
mcclurmc has quit [Ping timeout: 256 seconds]
mcclurmc has joined #ocaml
Kakadu has quit [Ping timeout: 264 seconds]
loy has joined #ocaml
Kakadu has joined #ocaml
chambart has quit [Ping timeout: 246 seconds]
mye has joined #ocaml
loy has quit [Remote host closed the connection]
loy has joined #ocaml
_andre has joined #ocaml
lolcathost has joined #ocaml
loy has quit [Remote host closed the connection]
adotbrown has joined #ocaml
adotbrown has quit [Ping timeout: 265 seconds]
ontologiae has joined #ocaml
Yoric has quit [Remote host closed the connection]
Yoric has joined #ocaml
beckerb has joined #ocaml
absalon has joined #ocaml
chambart has joined #ocaml
absalon has quit [Quit: Ex-Chat]
watermind has joined #ocaml
cdidd has joined #ocaml
adotbrown has joined #ocaml
ivan\ has quit [Ping timeout: 276 seconds]
ivan\ has joined #ocaml
mcclurmc has quit [Read error: Operation timed out]
adotbrown has quit [Ping timeout: 260 seconds]
watermind has quit [Quit: Konversation terminated!]
watermind has joined #ocaml
watermind has quit [Client Quit]
watermind has joined #ocaml
mcclurmc has joined #ocaml
andreypopp has joined #ocaml
Kakadu has quit [Ping timeout: 252 seconds]
Kakadu has joined #ocaml
Kakadu has quit [Read error: Connection reset by peer]
Kakadu has joined #ocaml
ttamttam has quit [Quit: ttamttam]
mye has quit [Quit: mye]
andreypopp has quit [Quit: sleep]
mye has joined #ocaml
<bobry> How can I pass a flag to ocamlbuild with OASIS?
ttamttam has joined #ocaml
ttamttam has quit [Client Quit]
owain` has joined #ocaml
owain` has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
mika1 has quit [Quit: Leaving.]
Kakadu has quit [Ping timeout: 240 seconds]
Kakadu has joined #ocaml
Kakadu_ has joined #ocaml
ttamttam has joined #ocaml
mcclurmc has quit [Ping timeout: 248 seconds]
ontologiae has quit [Ping timeout: 246 seconds]
nikodem has joined #ocaml
<f[x]> bobry, use _tags
Kakadu has quit [Ping timeout: 260 seconds]
mye has quit [Quit: mye]
mye has joined #ocaml
<_andre> what's the best documentation for getting started with GADTs?
Kakadu has joined #ocaml
redfire has joined #ocaml
beckerb has quit [Quit: Konversation terminated!]
beckerb has joined #ocaml
<rixed> batteries doc of Hashtbl.filteri says that "the bindings are passed to [f] in increasing order with respect to the ordering over the type of the keys". Seams bogus, ok to remove?
Kakadu has quit []
Kakadu has joined #ocaml
ontologiae has joined #ocaml
nikodem has left #ocaml []
alang_ has quit [Remote host closed the connection]
iratsu has quit [Remote host closed the connection]
mika1 has joined #ocaml
jathd has quit [Remote host closed the connection]
mika1 has quit [Quit: Leaving.]
mika1 has joined #ocaml
Tobu has quit [Remote host closed the connection]
Yoric has quit [Ping timeout: 252 seconds]
Yoric has joined #ocaml
dwmw2_gone is now known as dwmw2
mika1 has quit [Quit: Leaving.]
<maufred> Hello guys, has anyone encountered this error while using ocamlzip (The external function `camlzip_uncompress' is not available) ?
<maufred> I've found nothing on the internet
q66 has joined #ocaml
<thelema> maufred: how are you compiling?
<thelema> rixed: yes
<maufred> thelema: ocamlc -I /usr/lib/ocaml/zip/ zip.cma aa.ml
<orbitz> put zip.cma after aa.ml
<maufred> orbitz: then I have "Error: Error while linking aa.cmo:
<maufred> Reference to undefined global `Zip'
<thelema> maufred: there's some stub libraries that need to be involved
<maufred> thelema: Yes, but I thought I have them (there is one dllcamlzip.so in my /usr/lib/ocaml/stublibs/
<thelema> maufred: is that dir in your ld.conf?
<orbitz> is that in your CAML_LD_LIBRARY_PATH?
<thelema> (probably is, but doesn't hurt to check)
<maufred> orbitz: CAML_LD_LIBRARY_PATH is empty (that may be the problem ?)
<maufred> thelema: Compiling with ocamlfind does't fix the error
<thelema> ah, very interesting.
<orbitz> I don't know how it all works, but my usccess has been through setting CAML_LD_LIBRARY_PATH
<thelema> did you install using the ocamlfind target?
<orbitz> I got it from opam
<maufred> thelema: yes
<thelema> ok...
<maufred> thelema: I did make all; make install-findlib
<thelema> well, let's nail this down harder. can you add a -verbse to your compile command (to get the GCC command that's being used for linking)
<thelema> and use nm on the stub library to check if it has the missing symbol?
Tobu has joined #ocaml
<maufred> thelema: Hm, while building camlzip or my source file ?
<thelema> better than nm, objdump -TC
<thelema> while building your source file
<thelema> need to make sure that the stub library is being linked in
<maufred> Sorry I don't know how to use the objdump option, here is the version without it
<maufred> Effective set of compiler predicates: autolink,byte
<maufred> + ocamlc.opt -verbose -I /usr/lib/ocaml/zip zip.cma aa.ml
<maufred> File "aa.ml", line 1, characters 0-1:
<maufred> Error: Error while linking /usr/lib/ocaml/zip/zip.cma(Zlib):
<maufred> The external function `camlzip_uncompress' is not available
<maufred> ocamlc.opt returned with exit code 2
<thelema> maufred: can you compile to native code?
<zip> NOT MY BASTARD FAULT
<thelema> hmmm, odd. My dllcamlzip.so doesn't have a symbol camlzip_uncompress
<maufred> thelema: Error: No implementations provided for the following modules: Unix referenced from /usr/lib/ocaml/zip/zip.cmxa(Zip)
<thelema> maybe there is a problem with the zip package
<zip> o_O
<thelema> maufred: yes, that's easy, just depend on Unix as well
<f[x]> zip zip
<zip> O_o
<maufred> thelema: Ah yes ! adding unix.cmxa works
<maufred> Hm, could you tell me why this difference ?
<thelema> although, I can't find any reference o 'camlzip uncompress' in the camlzip source
<thelema> maufred: needing unix for native compilation?
<zip> (another day, another realisation that my handle is not that smart if I'm gonna be in erry programming channel evar)
<maufred> thelema: Forget it ...
<f[x]> thelema, it is macrosed iirc
<maufred> thelema: Well, thaks a lot, for solving this !
<thelema> f[x]: ah, that makes sense
<thelema> f[x]: except I still can't find any referemce
<thelema> maufred: there's still a very suspicious error for bytecode compilation
<thelema> but maybe your problem is solved
<maufred> thelema: which is ?
<thelema> maufred: as I understand it, your problem went away by switching to native compilation
<thelema> maufred: but bytecode compilation still gives an error
<maufred> thelema: exactly
<f[x]> thelema, indeed
<djcoin> zip: by chance you didn't choose 'lol' or 'the' as a nickname o_O
leoncamel has joined #ocaml
<zip> djcoin: I've met an "okay" and a "you"
<djcoin> huhu :)
<thelema> maufred: can you send me your test file?
<maufred> thelema: sure
<maufred> thelema: http://pastebin.com/r6pxMU31
<f[x]> thelema, now I am curious
<f[x]> by the way, if zip is installed via opam why it is located in /usr/lib/ocaml?
<f[x]> lol
<thelema> f[x]: patched camlzip to have a plain_uncompress function?
<f[x]> guess so
<f[x]> and OP is linking explicitly to system package, not opam one
<f[x]> should use ocamlfind
<f[x]> or ocamlfind is misconfigured
<thelema> f[x]: that all makes sense now
<thelema> somehow it's trying to use patched zip.cma with original stubs
<f[x]> yes, as usual - messed up environment
<f[x]> now go figure
<f[x]> why
<thelema> maufred: if you're using opam, make sure to include 'eval `opam config env`' in your profile
<thelema> opam does magic with some env variables, and if this is missing, weird results.
<maufred> thelema: Ok, I write it, but I've installed camlzip from the source or aptitude (debian package) (I don't remember well)
ttamttam has quit [Quit: ttamttam]
Cyanure has quit [Quit: Quitte]
mgodshall has joined #ocaml
ttamttam has joined #ocaml
Submarine has joined #ocaml
Submarine has quit [Changing host]
Submarine has joined #ocaml
Kakadu has quit []
Kakadu_ has quit [Quit: Page closed]
mika1 has joined #ocaml
loy has joined #ocaml
mye has quit [Quit: mye]
smondet has joined #ocaml
loy has left #ocaml []
ocp has quit [Quit: Leaving.]
leoncamel has quit [Ping timeout: 240 seconds]
redfire has quit [Quit: WeeChat 0.3.8]
mika1 has quit [Quit: Leaving.]
Submarine has quit [Remote host closed the connection]
cago has left #ocaml []
ftrvxmtrx_ has quit [Quit: Leaving]
hkBst has quit [Quit: Konversation terminated!]
Yoric has quit [Ping timeout: 252 seconds]
loy has joined #ocaml
loy has quit [Remote host closed the connection]
ttamttam has quit [Quit: ttamttam]
ttamttam has joined #ocaml
<thelema> adding "true: not_hygienic" to my _tags file gives the error: Exception Sys_error("gtktest/_tags: No such file or directory").
<thelema> (where gtktest/ is a folder in my source tree)
ttamttam has quit [Client Quit]
ttamttam has joined #ocaml
ttamttam has quit [Client Quit]
adrien_oww has quit [Ping timeout: 252 seconds]
adrien_oww has joined #ocaml
thomasga has quit [Quit: Leaving.]
Submarine has joined #ocaml
RagingDave has joined #ocaml
jknick has joined #ocaml
mye has joined #ocaml
tane has joined #ocaml
Zerker has joined #ocaml
Zerker has quit [Remote host closed the connection]
Zerker has joined #ocaml
Yoric has joined #ocaml
mye_ has joined #ocaml
Zerker has quit [Read error: Connection reset by peer]
Zerker has joined #ocaml
beckerb has quit [Ping timeout: 248 seconds]
mye has quit [Ping timeout: 252 seconds]
mye_ is now known as mye
Zerker has quit [Quit: Colloquy for iPad - Timeout (10 minutes)]
Zerker has joined #ocaml
weie has quit [Quit: Leaving...]
RagingDave has quit [Read error: Connection reset by peer]
tane has quit [*.net *.split]
chambart has quit [*.net *.split]
snarkyboojum has quit [*.net *.split]
ski has quit [*.net *.split]
pippijn has quit [*.net *.split]
alxbl has quit [*.net *.split]
cross has quit [*.net *.split]
mcclurmc_away has quit [*.net *.split]
alxbl has joined #ocaml
cross has joined #ocaml
pippijn has joined #ocaml
pippijn has quit [Changing host]
pippijn has joined #ocaml
snarkyboojum has joined #ocaml
ski has joined #ocaml
chambart has joined #ocaml
tane has joined #ocaml
mye has quit [Ping timeout: 244 seconds]
RagingDave has joined #ocaml
elixey has quit [Remote host closed the connection]
Zerker has quit [Remote host closed the connection]
lolcathost has quit [Ping timeout: 248 seconds]
thomasga has joined #ocaml
milosn_ is now known as milosn
Yoric has quit [Ping timeout: 246 seconds]
<fasta> Is there any library to access hardware information for ocaml?
<fasta> To produce the same kind of information as hwinfo produces?
osa1 has joined #ocaml
chambart has quit [Ping timeout: 244 seconds]
<troydm> fasta: i'm not sure there is such library, you can run hwinfo like an external command and then parse the output with ocaml
dwmw2 is now known as dwmw2_gone
<adrien> at that point you'd probably access /sys or /proc directly ;-)
ontologiae has quit [Ping timeout: 248 seconds]
_andre has quit [Quit: leaving]
mye has joined #ocaml
lolcathost has joined #ocaml
<fasta> How should I parse this? class process_full : ?timeout:float -> ?env:string array -> command -> object..end
<fasta> I.e., how to translate that to English.
<fasta> I have no idea whether that defines just an interface and if so, which one.
<adrien> it returns an empty object? or at least with no publicly accessibl fields?
Yoric has joined #ocaml
<fasta> class functional_point :
<fasta> int ->
<fasta> object ('a) val x : int method get_x : int method move : int -> 'a end
<fasta> Is that a bug in the manual?
<fasta> See 3.13.
<adrien> where is that from?
<adrien> labltk?
<fasta> Running all examples through a compiler seems advisable.
hongboz has joined #ocaml
nimred has quit [Quit: leaving]
emmanuelux has joined #ocaml
nimred has joined #ocaml
nimred has quit [Changing host]
nimred has joined #ocaml
testcocoon has quit [Quit: Coyote finally caught me]
chambart has joined #ocaml
testcocoon has joined #ocaml
Anarchos has joined #ocaml
<thelema> fasta: it declares a class
<thelema> a parameterized class
elixey has joined #ocaml
Reventlov has quit [Read error: Operation timed out]
Reventlov has joined #ocaml
<fasta> thelema: it seems exactly the same as a C++ constructor.
<fasta> Or C++ constructor declaration if you want to be more precise.
smondet has quit [Ping timeout: 252 seconds]
<thelema> yes, it's similar, although you only get one "constructor" per class definition
<flux> there's some overlap with classes and functions
<flux> basically it can look like class defines a function that can only return objects
<flux> and you can use 'new' with classes
<flux> and then you can inherit them
<flux> I'm not sure what benefits does the 'class' functionality bring over functions and object types..
<flux> if someone can point them out to me, then please do :)
<thelema> flux: inheritance is the big one.
<flux> and then it's annoying that I cannot inherit object instances
<flux> I think there was discussion on the channel years ago about that..
<flux> I think some probably typing problems regarding that were brought up during that
<flux> s/probably/probable/
<Anarchos> by inheritance, the methode executed depends on the runtime type
<Anarchos> which you can't achieve with normal functions
hongboz has quit [Ping timeout: 260 seconds]
<flux> hmm, what?
<Anarchos> you can see the ellipsis in classes types as an existential type variable.
Submarine has quit [Ping timeout: 248 seconds]
<Anarchos> the declared function is note the function executed by runtime if inheritance is involved
TDJACR has quit [Remote host closed the connection]
hongboz has joined #ocaml
Submarine has joined #ocaml
<Anarchos> flux you never used C++ ?
mye has quit [Ping timeout: 246 seconds]
<adrien> he wishes he never did
<flux> anarchos, yes, plenty
<Anarchos> flux so you know what classes are !!
<flux> anarchos, I definitely know what classes are
<flux> anarchos, but in ocaml, the functionality provided by the 'class' keyword is very similar to restricted functions
osa1 has quit [Ping timeout: 248 seconds]
<flux> in fact, you can quite easily simulate classes with plain functions returning objects
<Anarchos> what are restricted functions ?
<flux> classes create functions from their arguments to objects
<flux> plain functions have no restriction on 'return value'
<flux> illegal: class foo a = a + 1 legal: let foo a = a + 1 legal: class foo a = object method get = a end legal: let foo a = object method get = a end
<flux> and then there is the fact that you can do inheritance
<flux> so that gives classes some edge
<flux> although apparently in the OO circles doing inheritance isn't all that great, I hear
<flux> and then of course there is the difference in calling them, new foo 42 versus foo 42
* companion_cube favors functions returning immediate objects
<flux> but if you want to pass a factory object as a parameter, and that factory object depends on current scope, you will probably use 'inline objects' and maybe a local function to make one for you
<flux> (obviously not 'plain' factory returning values for input, because for that you would use a function in ocaml)
<flux> making local classes is much more syntactic overhead.. you need to put them into a module etc.
<flux> and as objects are similar to records of functions, it makes sense to me it should be possible to make new objects based on existing ones but modify some of those fields, that is, you could take an object and create a different version of it. sort of like inheriting an object.
<flux> I don't have good understanding on how ocaml methods work, but I'm under the understanding that the runtime would allow that, it's all about typing..
<flux> but now I'm off to sleep
hongboz has quit [Ping timeout: 252 seconds]
mgodshall has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
gour has quit [Disconnected by services]
gour_ has joined #ocaml
chambart has quit [Ping timeout: 252 seconds]
watermind has quit [Quit: Konversation terminated!]
gour_ has quit [Quit: WeeChat 0.3.8]
mk270 has quit [Read error: Operation timed out]
Yoric has quit [Ping timeout: 252 seconds]
mk270 has joined #ocaml
myx has quit [Ping timeout: 265 seconds]
RagingDave has quit [Quit: Ex-Chat]
adotbrown has joined #ocaml
lolcathost has quit [Ping timeout: 240 seconds]
tani has joined #ocaml
fraggle_ has quit [Quit: -ENOBRAIN]
fraggle_ has joined #ocaml
tane has quit [Ping timeout: 276 seconds]
Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
RagingDave has joined #ocaml
sivoais has quit [Ping timeout: 252 seconds]
sivoais has joined #ocaml
<troydm> real world ocaml is going to release only in an year, any one knows if it'll be available for free online like real world haskell?
<bitbckt> avsm: ^
emmanuelux has quit [Remote host closed the connection]
<troydm> i'm going to buy hardcopy anyway but just curious :)
<troydm> i know about website and all that proof reading thing thou, but just curious if it'll be available for free online reading afterwards
<troydm> also i'm just little bit biased of starting reading it now because there are only chapters available
thomasga has quit [Quit: Leaving.]
q66 has quit [Quit: Quit]
alej has joined #ocaml
RagingDave has quit [Quit: Ex-Chat]
lolcathost has joined #ocaml
avsm has quit [Ping timeout: 260 seconds]
tani has quit [Quit: Verlassend]
avsm has joined #ocaml