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-lang.org | Public logs at http://tunes.org/~nef/logs/ocaml/
Tobu has joined #ocaml
ulfdoz_ has joined #ocaml
ulfdoz has quit [Read error: Operation timed out]
ulfdoz_ is now known as ulfdoz
sepp2k1 has quit [Remote host closed the connection]
mildfate has joined #ocaml
mildfate1 has quit [Read error: Connection reset by peer]
mildfate has quit [Client Quit]
eikke has quit [Ping timeout: 255 seconds]
emmanuelux has quit [Remote host closed the connection]
eikke has joined #ocaml
Playground is now known as lolcathost
gustav__ has quit [Ping timeout: 264 seconds]
mye has quit [Quit: mye]
k0001 has joined #ocaml
eikke has quit [Ping timeout: 255 seconds]
eikke has joined #ocaml
cdidd has quit [Remote host closed the connection]
k0001_ has joined #ocaml
mildfate has joined #ocaml
k0001 has quit [Ping timeout: 250 seconds]
everyonemines has joined #ocaml
madroach has quit [Ping timeout: 244 seconds]
madroach has joined #ocaml
Yoric has joined #ocaml
eikke has quit [Ping timeout: 240 seconds]
ikaros has quit [Quit: Ex-Chat]
Yoric has quit [Ping timeout: 260 seconds]
gnuvince has joined #ocaml
Neros has quit [Remote host closed the connection]
k0001 has joined #ocaml
k0001_ has quit [Ping timeout: 260 seconds]
Derander has quit [Ping timeout: 260 seconds]
Derander has joined #ocaml
<mildfate> I have premade .cmo and .cmi files. How do I link these in compilation? I have .cmo as an -lflags and I don't know what to do with the .cmi.
gustav__ has joined #ocaml
<mildfate> how does one "load" external cmi or cmo files in OcaIDE?
cornihilio has quit [Ping timeout: 246 seconds]
k0001_ has joined #ocaml
k0001 has quit [Ping timeout: 260 seconds]
cornihilio has joined #ocaml
ankit9 has joined #ocaml
TDJACR_ has joined #ocaml
TDJACR_ has quit [Client Quit]
ankit9 has quit [Ping timeout: 246 seconds]
Cyanure has joined #ocaml
ankit9 has joined #ocaml
<flux> mildfate, you don't load cmi-files, you let the toplevel/compiler find them
<flux> so -I gives paths to where to find the cmi files
<flux> cmi files are always in the same name as the module interface you want to use. you want to use Foo? You need to have foo.cmi around. you want to use Bar.Baz? you need to have bar.cmi around (Baz is a module inside it)
<flux> ((I was assuming Foo and Bar.Baz are indeed modules ;)))
<mildfate> flux: I've moved to using -I
<mildfate> but now I get, "foo.cmi is not a compiled interface"
<mildfate> flux: I want to use Foo and I have Foo.cmi but I don't have Foo.ml
<mildfate> I also have Foo.cmo
<flux> that error in my experience means you've compiled it with different ocaml version
<mildfate> here's the thing: I'm unsure what version of ocaml it was compiled with. I changed my ocaml version from 4 to 3.12.0 to 3.12.1 and these three all gave the same error
myx has joined #ocaml
<mildfate> even if I'm using ocaml 4.0, I can't use these external cmo and cmi files?
<mildfate> flux ^
ankit9 has quit [Ping timeout: 244 seconds]
<flux> if they are not compiled in ocaml 4.0, then that is likely the reason
<flux> and .cmo files are compiled against an interface (.cmi) file
<flux> so you just have a bunch of .cmo and .cmi files and you want to take use of them?
<flux> I'm relatively sure that that's not going to happen with ocaml version other than the files were produced with in the first place. but perhaps someone else has better ideas.
answer_42 has joined #ocaml
<mildfate> flux: I only have 1 cmo and 1 cmi and I need to use them. I've tried changing my version of ocaml to 3.12.0, 3.12.1, and 4.0, all three gave the not compiled interface problem. btw, I'm using ocaide if that means anything
lolcathost has quit [Quit: When I come back, please tell me in what new ways you have decided to be completely wrong.]
<mildfate> flux: can anything other than testing versions be done?
<flux> well, 3.11.2 next..
<flux> I haven't seen that the files would embed version information
<flux> which is a shame, actually.
<flux> well, there is this, but it's not a lot better:
<flux> you can do ocamlobjinfo yourcmifile.cmi | grep Pervasives
<flux> then you can do ocamlobjinfo /usr/lib/ocaml/pervasives.cmi (or whereever it is) and see that the numbers do not match
<flux> you could maybe google the number you get from the first command to see if the number is associated to an ocaml version
<mildfate> flux: for the first command, I got no output
ankit9 has joined #ocaml
ankit9 has quit [Client Quit]
groleo has joined #ocaml
<flux> mildfate, how about without the grep part? try the .cmo file as well
<flux> I suppose it's possible the cmi file doesn't need Pervasives for anything, but the cmo surely should..
<mildfate> this was the number I got db723a1798b122e08919a2bfed062514
Cyanure has quit [Remote host closed the connection]
<flux> but I'll be moving myself to the office, hopefully you can find a solution
answer_42 has quit [Ping timeout: 276 seconds]
Yoric has joined #ocaml
mildfate has quit [Quit: Leaving.]
k0001 has joined #ocaml
everyonemines has quit [Quit: Leaving.]
k0001_ has quit [Ping timeout: 260 seconds]
hkBst has joined #ocaml
hkBst has quit [Changing host]
hkBst has joined #ocaml
chambart has joined #ocaml
lolcathost has joined #ocaml
pango is now known as pangoafk
Cyanure has joined #ocaml
Cyanure has quit [Remote host closed the connection]
ontologiae has joined #ocaml
djcoin has joined #ocaml
ontologiae has quit [Ping timeout: 252 seconds]
lolcathost has quit [Ping timeout: 264 seconds]
andreypopp has joined #ocaml
Fullma has quit [Ping timeout: 245 seconds]
lolcathost has joined #ocaml
andreypopp has quit [Read error: Connection reset by peer]
andreypopp has joined #ocaml
hkBst has quit [Ping timeout: 260 seconds]
hkBst has joined #ocaml
hkBst has quit [Changing host]
hkBst has joined #ocaml
ontologiae has joined #ocaml
andreypopp has quit [Read error: Connection reset by peer]
ankit9 has joined #ocaml
k0001 has quit [Ping timeout: 252 seconds]
k0001 has joined #ocaml
andreypopp has joined #ocaml
thomasga has joined #ocaml
Snark 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.]
andreypopp has quit [Read error: Connection reset by peer]
ftrvxmtrx has joined #ocaml
Xizor has joined #ocaml
hkBst_ has joined #ocaml
hkBst has quit [Ping timeout: 246 seconds]
k0001_ has joined #ocaml
k0001 has quit [Ping timeout: 244 seconds]
andreypopp has joined #ocaml
eikke has joined #ocaml
k0001_ has quit [Ping timeout: 256 seconds]
<yezariaely> Is there some means to print informations about .cmo files?
<yezariaely> similar to objdump for elf objs?
thomasga has quit [Ping timeout: 260 seconds]
hkBst_ has quit [Ping timeout: 255 seconds]
hkBst__ has joined #ocaml
ikaros has joined #ocaml
_andre has joined #ocaml
thomasga has joined #ocaml
chambart has quit [Ping timeout: 246 seconds]
andreypopp has quit [Quit: sleep]
chambart has joined #ocaml
<yezariaely> anyone tried the ocaml z3 bindings recently?
<yezariaely> I am missing an external reference to Z3_parse_z3_string and can't find the definition. I grepped the whole src distribution
<flux> have you grepped the binary files as well?
<flux> and the Z3 library if it's is bindings
<yezariaely> grepped everything, yes
<yezariaely> and no, it is not in the libz3.so
<yezariaely> flux: the build process seems to be completely out of sync with the current development
<yezariaely> I had to rewrite the build script almost completely. No path was correct.
chambart has quit [Ping timeout: 246 seconds]
<yezariaely> well, the ocaml bindings in Z3-4.3.1 are the ones from Z3-3.2 (!!!)
<yezariaely> thus, not useable...
lolcathost has joined #ocaml
ttm has quit [Quit: ZNC - http://znc.sourceforge.net]
justdit has joined #ocaml
andreypopp 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.]
The_third_man has joined #ocaml
cornihilio has quit [Ping timeout: 260 seconds]
andreypopp has quit [Quit: sleep]
xavierm02 has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
cornihilio has joined #ocaml
cdidd has joined #ocaml
larhat has joined #ocaml
justdit has joined #ocaml
andreypopp has joined #ocaml
mye has joined #ocaml
andreypopp has quit [Quit: sleep]
ontologi1e has joined #ocaml
ontologiae has quit [Read error: Connection reset by peer]
Yoric has quit [Ping timeout: 246 seconds]
andreypopp has joined #ocaml
andreypopp has quit [Quit: sleep]
answer_42 has joined #ocaml
andreypopp has joined #ocaml
cornihilio has quit [Ping timeout: 264 seconds]
andreypopp has quit [Client Quit]
Tobu has quit [Ping timeout: 264 seconds]
andreypopp has joined #ocaml
andreypopp has quit [Client Quit]
mye has quit [Quit: mye]
ankit9 has quit [Quit: Leaving]
mye has joined #ocaml
Tobu has joined #ocaml
andreypopp has joined #ocaml
andreypopp has quit [Client Quit]
mye has quit [Quit: mye]
gnuvince has quit [Ping timeout: 240 seconds]
Yoric has joined #ocaml
hkBst__ is now known as hkBst
ousado has quit [Read error: Connection reset by peer]
hkBst has quit [Remote host closed the connection]
ousado has joined #ocaml
ousado has quit [Changing host]
ousado has joined #ocaml
hkBst__ has joined #ocaml
hkBst__ is now known as hkBst
sepp2k has joined #ocaml
<Qrntz> yezariaely, consider «ocamlobjinfo»
xavierm02 has quit [Read error: Operation timed out]
justdit has quit [Ping timeout: 255 seconds]
xavierm02 has joined #ocaml
Yoric has quit [Remote host closed the connection]
Yoric has joined #ocaml
ontologi1e has quit [Quit: Lost terminal]
<ousado> thelema: here?
jave has quit [Quit: ZNC - http://znc.in]
jave has joined #ocaml
fraggle_laptop has joined #ocaml
andreypopp has joined #ocaml
UncleVasya has joined #ocaml
hkBst has quit [Ping timeout: 260 seconds]
hkBst has joined #ocaml
smondet has joined #ocaml
hkBst has quit [Remote host closed the connection]
hkBst has joined #ocaml
mye has joined #ocaml
<thelema> ousado: yes
andreypopp has quit [Quit: sleep]
dwmw2_gone has quit [Ping timeout: 245 seconds]
fasta has quit [Read error: Connection reset by peer]
dwmw2_gone has joined #ocaml
dwmw2_gone has quit [Excess Flood]
<xavierm02> is :: tail recursive?
<xavierm02> or do I have to use an accumulator?
<PM> xavierm02: what do you mean?
<PM> in which context?
<PM> a::b is not a recursive operation
<PM> and it is executed in constant time
<xavierm02> let make_list n f = match n with | 0 -> [] | _ -> f () :: make_list (n-1) f;;
andreypopp has joined #ocaml
<xavierm02> will it understand that it can use tail recursion?
<thelema> xavierm02: this function calls itself in a non-tail-recursive manner
<thelema> if you note, after the recursive call returns, there is still work to do - prepending f() to the result
<xavierm02> yes
<xavierm02> but it would be easy to rewrite that into tail recursive code
<xavierm02> I thought ocaml did that on his own
<PM> xavierm02: indeed, you need an accumulator to make this function tail-recursive
<thelema> Either you'll have to build the list in reverse and reverse it, or you'll have to accept that the first call to f will be put in the last position in the list
<thelema> no, it would not be trivial to rewrite this into tail recursive code, and ocaml doesn't do this for you.
<xavierm02> ok :(
<thelema> if you give OCaml tail recursive code, it does TCO - tail call optimization, which is necessary to avoid stack overflow on tail-recursive functions
<thelema> but the OCaml compiler does very little "rewriting" of the user's code.
<xavierm02> so in the doc
<xavierm02> when they say tail recursive
<xavierm02> they just mean "it won't blow if you give a too long input"?
<thelema> "it won't overflow the stack with recursive calls to itself."
<xavierm02> I thought those were special functions that the compiler recognized and rewrote if you used them in the last line of the function
<xavierm02> but not :(
<thelema> nope.
<ousado> thelema: hi had an odb question, but reading helped :)
<ousado> if you don't mind I'll bug you later with some questions
<thelema> I'll be online and offline intermittently, but should manage to get back to you if you ask a question
<ousado> nice
dwmw2_gone has joined #ocaml
Kakadu has joined #ocaml
travisbrady has joined #ocaml
Cyanure has joined #ocaml
beckerb has quit [Ping timeout: 245 seconds]
tane has joined #ocaml
Yoric has quit [Ping timeout: 246 seconds]
j2d2away is now known as j2d2j2d2
gnuvince has joined #ocaml
ftrvxmtrx has quit [Quit: Leaving]
hkBst has quit [Quit: Konversation terminated!]
andreypopp has quit [Quit: sleep]
gnuvince has quit [Ping timeout: 260 seconds]
gnuvince has joined #ocaml
andreypopp has joined #ocaml
ontologiae has joined #ocaml
andreypopp has quit [Quit: sleep]
andreypopp has joined #ocaml
notdan has quit [Remote host closed the connection]
tac has joined #ocaml
gnuvince has quit [Ping timeout: 240 seconds]
jknick has joined #ocaml
andreypopp has quit [Quit: sleep]
andreypopp has joined #ocaml
lufu has joined #ocaml
andreypopp has quit [Client Quit]
pngl has joined #ocaml
lufu has quit [Remote host closed the connection]
The_third_man has quit [Quit: ZNC - http://znc.in]
The_third_man has joined #ocaml
ohama has quit [Ping timeout: 248 seconds]
fasta has joined #ocaml
ohama has joined #ocaml
pangoafk is now known as pango
ontologiae has quit [Ping timeout: 260 seconds]
travisbrady has quit [Quit: travisbrady]
travisbrady has joined #ocaml
milosn has quit [Ping timeout: 246 seconds]
milosn has joined #ocaml
djcoin has quit [Quit: WeeChat 0.3.9.1]
Neros has joined #ocaml
BiDOrD has joined #ocaml
BiDOrD_ has quit [Ping timeout: 260 seconds]
mye has quit [Quit: mye]
larhat has quit [Quit: Leaving.]
Apple has joined #ocaml
andreypopp has joined #ocaml
ontologiae has joined #ocaml
jamii has joined #ocaml
mildfate has joined #ocaml
Yoric has joined #ocaml
ftrvxmtrx has joined #ocaml
Apple has quit [Quit: leaving]
thomasga has quit [Quit: Leaving.]
<orbitz> If I'm packing a bunch of modules, can they refer to each other through their pack name in code?
k0001 has joined #ocaml
_andre has quit [Quit: leaving]
Fabrizio has joined #ocaml
<Fabrizio> Is there anything similar to the Haskell conduit package in OCaml?
<adrien> orbitz: you mean, you're packing Foo and Bar into Baz and you'd like to write Baz.Foo and Baz.Bar?
<adrien> which does?
<orbitz> adrien: yes
<adrien> orbitz: then, afaik, no
<orbitz> What is the preferred solution to the siutaion where i plan on having Baz.Foo but Foo is the name of a module that exists in another library so if I use it internally I'll get that instead
<orbitz> maek b_foo.ml and then maek baz.ml and do module Foo = B_foo?
<adrien> well, since you were going for Baz.Foo, BazFoo or Baz_Foo would equally work
<adrien> but you're going to use the two modules in the same file for sure?
Vinnipeg has joined #ocaml
<orbitz> More than likely
<orbitz> I want my own Baz.Reader but I'll be using Async.Std which has Reader
<adrien> you could avoid using "open Async.Std"
<adrien> or you could do it in a limited scope
<adrien> like "let open Async.Std in ..."
<orbitz> I could, that just makes life a bit more tedious though
<adrien> or
<adrien> module Weeeeee = struct
<adrien> open Async.Std
<adrien> [...]
<adrien> end
<adrien> or also: module Std = Async.Std
<orbitz> i'm ok with calling my think b_foo the only issue is referring to types in API functions
<adrien> actually, you could probably even do:
<orbitz> I don't want that to leak to the user
<adrien> module Bak = Reader
<adrien> open Async.Std
<adrien> open Bak
<adrien> or something like that, you get the idea
<adrien> but I find it ugly :P
<orbitz> yes that is ugly
Fabrizio has quit [Quit: Leaving]
<orbitz> also, is there a preference for 'make' vs 'create'?
UncleVasya has quit [Quit: UncleVasya]
tac has quit [Quit: Page closed]
tac has joined #ocaml
<adrien> dunno; I've been wondering the same
<orbitz> adrien: ok, let's define it right now :)
<orbitz> I say 'make' :)
<adrien> hmmm
<adrien> I think I see the idea in the stdlib
<orbitz> seems like 'make' is when you know how to make it completley and 'create' is more of a semi-constructed thing, right?
<adrien> "make" is used for functors and "create" is the default when Make is used
<adrien> so, yeah, a bit like that
<adrien> create could be "instantiate"
<orbitz> String has 'make' and 'create' i think
<adrien> Array too
<adrien> but not Hashtbl
andreypopp has quit [Quit: sleep]
<orbitz> naming things is such a bitch
larhat has joined #ocaml
emmanuelux has joined #ocaml
fraggle_ has quit [Read error: Connection reset by peer]
fraggle_ has joined #ocaml
ontologiae has quit [Ping timeout: 260 seconds]
<j2d2j2d2> i love it
k0001 has quit [Ping timeout: 250 seconds]
k0001 has joined #ocaml
answer_42 has quit [Quit: WeeChat 0.3.9.2]
<orbitz> j2d2j2d2: plz stop lambasting me
andreypopp has joined #ocaml
gnuvince has joined #ocaml
gnuvince has quit [Ping timeout: 240 seconds]
lolcathost has joined #ocaml
<j2d2j2d2> orbitz: HA
lolcathost has quit [Ping timeout: 248 seconds]
<j2d2j2d2> opal is SO nice
<j2d2j2d2> well, compared to what i was used
<j2d2j2d2> t
Kakadu has quit []
sepp2k1 has joined #ocaml
sepp2k has quit [Ping timeout: 246 seconds]
mildfate has quit [Quit: Leaving.]
travisbrady has quit [Quit: travisbrady]
tane has quit [Quit: Verlassend]
emmanuelux has quit [Quit: emmanuelux]
chambart has joined #ocaml
lolcathost has joined #ocaml
Vinnipeg has quit [Ping timeout: 265 seconds]
jamii has quit [Ping timeout: 256 seconds]
jamii has joined #ocaml
chambart has quit [Ping timeout: 264 seconds]
travisbrady has joined #ocaml
emmanuelux has joined #ocaml
Cyanure has quit [Remote host closed the connection]
k0001_ has joined #ocaml
lolcathost has quit [Ping timeout: 244 seconds]
k0001 has quit [Ping timeout: 252 seconds]
lolcathost has joined #ocaml
andreypopp has quit [Quit: sleep]
cornihilio has joined #ocaml
chambart has joined #ocaml
dwmw2_gone has quit [Ping timeout: 260 seconds]
ontologiae has joined #ocaml
Yoric has quit [Ping timeout: 246 seconds]
dwmw2_gone has joined #ocaml
Snark has quit [Quit: Quitte]
andreypopp has joined #ocaml
k0001_ has quit [Read error: Connection reset by peer]
mye has joined #ocaml
dwmw2_gone has quit [Ping timeout: 245 seconds]
dwmw2_gone has joined #ocaml
andreypopp has quit [Quit: sleep]
mattrepl has joined #ocaml
Guest91483 has quit [Changing host]
Guest91483 has joined #ocaml
Guest91483 is now known as kba
dwmw2_gone has quit [Ping timeout: 260 seconds]
dwmw2_gone has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
emmanuelux has quit [Quit: emmanuelux]
eikke has quit [Ping timeout: 240 seconds]
xavierm02 has quit [Quit: Leaving]
eikke has joined #ocaml
andreypopp has joined #ocaml
dwmw2_gone has quit [Ping timeout: 245 seconds]
ikaros has joined #ocaml
dwmw2_gone has joined #ocaml
thomasga has joined #ocaml
Xizor has quit []
milosn has quit [Read error: Connection reset by peer]
milosn has joined #ocaml
andreypopp has quit [Quit: sleep]
pooya72 has joined #ocaml
ontologiae has quit [Ping timeout: 264 seconds]
lolcathost has quit [Ping timeout: 250 seconds]
lolcathost has joined #ocaml
lolcathost has quit [Client Quit]
chambart has quit [Ping timeout: 246 seconds]
eikke has quit [Ping timeout: 265 seconds]
ontologiae has joined #ocaml
shajen has quit [Read error: Operation timed out]
smondet has quit [Ping timeout: 260 seconds]
thomasga has quit [Quit: Leaving.]
shajen has joined #ocaml
ontologiae has quit [Ping timeout: 264 seconds]
travisbrady has quit [Quit: travisbrady]
eikke has joined #ocaml
jamii has quit [Ping timeout: 245 seconds]
gnuvince has joined #ocaml
othiym23 has quit [Ping timeout: 246 seconds]
othiym23 has joined #ocaml
pooya72 has quit [Quit: pooya72]
myx has quit [Ping timeout: 250 seconds]
eikke has quit [Ping timeout: 256 seconds]
eikke has joined #ocaml
Yoric has joined #ocaml
travisbrady has joined #ocaml