Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
eikke has joined #ocaml
<adrien>
I'm under the impression that lwt won't compile without Text
<adrien>
it's properly disabled at configure but it's built anyway
<adrien>
ah, it's in the doc
lopex has joined #ocaml
raichoo has joined #ocaml
Snark has joined #ocaml
milosn has quit [Ping timeout: 240 seconds]
milosn has joined #ocaml
<adrien>
am I doing it wrong of creating distribution packages with ocamlfind installations is actually really annoying?
<sgnb>
adrien: I don't understand what you mean
<Kakadu>
sgnb: +1
yezariaely has quit [Quit: Leaving.]
<adrien>
sgnb: for instance, ocamlfind and the notion of DESTDIR: it does it its own way; ld.conf also requires some special handling (but I'm not sure this one could be improved)
<sgnb>
adrien: we (Debian) do use "ocamlfind install" when upstream supports it
<sgnb>
we customize the location using OCAMLFIND_DESTDIR envvar
<sgnb>
and if the stublibs directory already exists, it doesn't mess up with ld.conf
<adrien>
sgnb: I'm doing the same but I think it could have been simpler
<adrien>
how do you handle ld.conf? post-(un)install hooks and some grepping to see if the value is already set?
<sgnb>
adrien: how? one export and one mkdir doesn't look difficult to me
<sgnb>
adrien: what's the problem with ld.conf?
<zorun>
adrien: there should be no need to mess with ld.conf
milosn has quit [Read error: Operation timed out]
<adrien>
hmmm, I was mistaken on the values in ld.conf
<adrien>
should I mkdir the stublibs folder before ocamlfind install is called?
<zorun>
yup
<hcarty>
Kakadu: You don't use Extlib.Enum, you use Batteries.Enum :-)
s44nder has joined #ocaml
<Kakadu>
hcarty: I'm looking at an example for the article about parser combinators. It is not my code.
<hcarty>
Kakadu: Ah, in that case it depends on how they are used. For example, Batteries provide a ( -- ) operator which can be used to create enumerations of integers.
<hcarty>
Kakadu: So (1 -- 10) returns an enumeration of 1, 2, 3, ..., 10
<s44nder>
Hi. I am a new to Ocaml, and I wish to run the Ocamlgraph demo, but it fails.
milosn has joined #ocaml
<s44nder>
If I run ocamlfind ocamlopt -package ocamlgraph -linkpkg 'demo.ml' -o demo, I receive the following error:
<adrien>
zorun: I think that's what I got to
<adrien>
zorun: not stripping anything?
<hcarty>
Kakadu: In the code you reference it looks like Enum is used as a lazy filter on an array
<adrien>
package built \o/
<zorun>
adrien: mmh, I think it breaks some bytecode objects
<zorun>
s44nder: is ocamlgraph installed on your system?
<adrien>
zorun: I think lwt doesn't have any of these
<adrien>
zorun: can't you control which files should be stripped?
<s44nder>
findlib: [WARNING] Package ocamlgraph has multiple definitions in /usr/local/lib/ocaml/3.11.2/ocamlgraph/META, /usr/lib/ocaml/ocamlgraph/META
<s44nder>
File "demo.ml", line 1, characters 0-1:
<s44nder>
Error: No implementations provided for the following modules:
<s44nder>
Graphics referenced from demo.cmx
<s44nder>
Unix referenced from demo.cmx
<Kakadu>
hcarty: thanks for your explanation
<s44nder>
zorun, I have installed it from source after it stopped at the ocamlgraph dependency
<sgnb>
s44nder: add -packages graphics,unix to your command line
<hcarty>
Kakadu: You're welcome, I hope it helps
<sgnb>
sorry, -package
<s44nder>
now i have two ocamlgraphs it seems. But the error is about unix
<adrien>
s44nder: which distribution btw?
<s44nder>
Why does the demo not run without this command line (not explained by the demo authors as far as I know)? And is there an easy way I can see which packages I have and do not have installed? (running on Ubuntu so could search my deb packages, but that feels a bit hit-and-miss)
<adrien>
"ocamlfind list" will give you the packages registered with it
cago has joined #ocaml
<sgnb>
s44nder: it looks like you've install ocamlgraph from source AND from deb package
<s44nder>
aha
<sgnb>
don't do that
<sgnb>
s44nder: either uninstall the Debian package, or the manually installed one
<s44nder>
yes, sgnb, that is what I noted already ... Was a mistake because of confusion due to the initial error message.
<s44nder>
make uninstall would not thrash the deb package install of this module?
<s44nder>
now it works: ocamlfind ocamlopt -package ocamlgraph -package unix -package graphics -linkpkg 'demo.ml' -o demo
<sgnb>
s44nder: I'm not sure... at worst, you can reinstall the Debian package
<s44nder>
another reason I was confused is that that ocamlgraph and graphics are different packages (of course, now it seems obvious)
<zorun>
s44nder: the manual install is in /usr/local/... and the deb one is in /usr/..., so there shouldn't be any issue removing the one in /usr/local/...
<s44nder>
What is the preferred way of installing packages? From source or from the Debian/Ubuntu binary repository? )I am aiming at the performance and possible arch-specific features?)
<s44nder>
okay zorun, thanks. Will remove the one installed from source. Is it just ugly to have two parallel installations of the same package, or do you know of any technical problems that may arise from that in ocaml?
<sgnb>
s44nder: from Debian/Ubuntu binary repository of course ;-)
<zorun>
you'll gain nothing by installing packages by hand, excepted messing up your system ;)
<sgnb>
(this is valid not only for ocaml stuff, btw)
<sgnb>
but I was tired of seeing bugreports about this "feature"
<adrien>
I wasn't using slackbuilds.org' ocaml package at all but only godi; I had to go look at it and of course it strips everything
<zorun>
I'm not sure to remember the issue: does "strip" try to strip bytecode objects and renders them unusable?
<sgnb>
there are issues only for bytecode executables linked with -custom AFAICT
<sgnb>
upstream ocaml just does that by (basically) concatenating ocamlrun with the bytecode
<sgnb>
but strip removes what is seen as trailing garbage, rendering the executable useless
<sgnb>
my patch puts the bytecode somewhere it won't be stripped
<s44nder>
I am enthusiastic about Ocaml but still have to do and read more about it. I also like R, which is BTW also (quasi) functional. What do you Ocaml users think of R and Ocaml? Are they nice complements, similarities, differences?
<s44nder>
Would like to philosophize a bit about that. :)
<hcarty>
sgnb: What was the reason for rejecting the patch?
<s44nder>
Do you not want to write applications in terms of software products or anything more complicated than statistical scripts? Because R has binding to so many software libraries (like Ocaml) and you can call C and even Ocaml so speed will be acceptable for many purposes. :)
<s44nder>
Yes I know, I would love to try it when I have more time. :0
<hcarty>
s44nder: It's not the speed that concerns me, but the complete lack of type safety :-)
<s44nder>
hehe I could have known!
<hcarty>
Errors are generally not detected until a particular piece of code is executed, so little-used cases may be sitting time bombs
<hcarty>
I was bitten by this a few times with R, so at this point I save R for interactive sessions. Even then I will often use OCaml if there are libraries to support what I need to do.
pilki has joined #ocaml
<hcarty>
R as an interactive data tool - excellent; R as an application development tool - about as friendly as bash.
vivanov has quit [Ping timeout: 252 seconds]
<s44nder>
But you can add assertion-like statements in the first lines of any function you define, to determine the class of any object (including any function you may pass as an argument, lovely). And there are some safety nets if you use the "as. ..." functions on everything. This is of course not the static type safety that I also love about Ocaml, but for rapid application development/prototyping of some kinds of simple applications it may be satisfactory
<s44nder>
? Disagree?
vivanov has joined #ocaml
<hcarty>
s44nder: Those features are helpful. But they still only catch errors once that code is run. Even Perl, Ruby and Python catch basic syntax errors before execution begins - R does not in many cases.
<hcarty>
s44nder: Even with all of that, I'm not "anti-R". I am just not personally happy with it as a development platform.
<hcarty>
OCaml development tends to be pretty rapid, assuming the right libraries are available.
<hcarty>
Depending on the task at hand the validity of that assumption can vary wildly :-)
Pepe_ has left #ocaml []
<thelema>
hcarty: reviewing your odb push now
<s44nder>
Yes you are right about the type checking before it is run. No idea why R does not do that. Perhaps because most functions accept values of many types for a given argument. For example, functions could accept 'any non-scalar object'. But still it would be useful.
<s44nder>
BTW R has made steps to have the scripts compile to bytecode. I could imagine that there is beter code analysis in for that compiler than for the interpreter.
<hcarty>
s44nder: I'm not even sure R does syntax checking before run-time. If they have introduced, or are going to introduce some form of compilation support then that would be a nice improvement.
<hcarty>
thelema: Thanks. I'm working on addressing your first comment now.
<thelema>
hcarty: great
eo-helios has joined #ocaml
<hcarty>
thelema: Hooray for shorter code :-) I pushed a change to my repository if you want to take a look.
<hcarty>
If you're happy with that addition I'll see if I can ammend the existing pull request to include the new commit.
<hcarty>
thelema: Never mind, I see you pulled the changes already.
<hcarty>
thelema: Should I create a new pull request for that one commit? Or is there other work that would be useful to group in with it?
<thelema>
I'll grab the changes from your repo
<thelema>
change pulled. Thanks for rewriting those functions - it does look better now.
<thelema>
although it looks better to merge pull requests, in terms of combined history.
Cyanure has quit [Remote host closed the connection]
pilki has quit [Quit: This computer has gone to sleep]
g0dmoney- has quit [Ping timeout: 244 seconds]
<adrien>
hcarty: I had miread Lwt_react.E's doc: Lwt_react's behaviour is actually quite obvious once you look at the function signatures: the function passed to a map operation, for instance, returns an 'a Lwt.t
<adrien>
I think I'll need to take some time in order to understand how I'm going to use it however ;-)
g0dmoney- has joined #ocaml
alxbl has quit [Changing host]
alxbl has joined #ocaml
raichoo has quit [Ping timeout: 245 seconds]
<adrien>
my code works by sending messages between components and the messages can't be reordered so I'm wondering if I'll really get an interesting parallelism
g0dmoney- has quit [Read error: Operation timed out]
raichoo has joined #ocaml
<hcarty>
thelema: I have a patch here to use a string set rather than a manually unique'd list when joining and displaying the package list
<hcarty>
thelema: It doesn't shorten the code but it may make it a bit more readable.
g0dmoney- has joined #ocaml
<bzzbzz>
c
oriba has joined #ocaml
eo-helios has quit [Quit: eo-helios]
tlockney_ is now known as tlockney
raichoo has quit [Quit: leaving]
Kakadu has quit [Ping timeout: 244 seconds]
oriba has quit [Quit: oriba]
Cyanure has joined #ocaml
EmmanuelOga has joined #ocaml
Kakadu has joined #ocaml
oriba has joined #ocaml
vivanov has quit [Ping timeout: 245 seconds]
vivanov has joined #ocaml
iago has joined #ocaml
Anarchos has joined #ocaml
Smerdyakov has joined #ocaml
vivanov has quit [Ping timeout: 244 seconds]
vivanov has joined #ocaml
rbancrof1 is now known as rbancroft
BiDOrD has joined #ocaml
BiDOrD_ has quit [Ping timeout: 276 seconds]
avsm has quit [Quit: Leaving.]
avsm has joined #ocaml
Xizor has joined #ocaml
cago has quit [Quit: Leaving]
dnolen has joined #ocaml
emmanuelux has joined #ocaml
wtetzner has quit [Read error: Connection reset by peer]
wtetzner has joined #ocaml
iago has quit [Remote host closed the connection]
pilki has joined #ocaml
Xizor has quit []
Smerdyakov has quit [Quit: Leaving]
s44nder has quit [Read error: Operation timed out]
s44nder has joined #ocaml
jamii has joined #ocaml
dnolen has quit [Quit: dnolen]
Kakadu has left #ocaml []
sepp2k has joined #ocaml
g0dmoney- has quit [Changing host]
g0dmoney- has joined #ocaml
jamii has quit [Ping timeout: 255 seconds]
Snark has quit [Ping timeout: 268 seconds]
sepp2k has quit [Remote host closed the connection]
Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
edwin has quit [Remote host closed the connection]
snarkyboojum has quit [Excess Flood]
snarkyboojum has joined #ocaml
Cyanure has quit [Remote host closed the connection]
dnolen has joined #ocaml
dnolen has quit [Client Quit]
EmmanuelOga has quit [Quit: WeeChat 0.3.7-dev]
eikke has quit [Ping timeout: 252 seconds]
bwright has joined #ocaml
jamii has joined #ocaml
Morphous has quit [Ping timeout: 240 seconds]
oriba has quit [Quit: oriba]
ikaros has quit [Quit: Ex-Chat]
Morphous has joined #ocaml
jamii has quit [Ping timeout: 244 seconds]
ikaros has joined #ocaml
fridim_ has quit [Ping timeout: 252 seconds]
eikke has joined #ocaml
s44nder has quit [Quit: Ik ga weg]
eikke has quit [Ping timeout: 240 seconds]
EmmanuelOga has joined #ocaml
pilki has quit [Quit: This computer has gone to sleep]