paddymahoney has quit [Remote host closed the connection]
ollehar has quit [Ping timeout: 246 seconds]
madroach has quit [Ping timeout: 248 seconds]
madroach has joined #ocaml
ollehar has joined #ocaml
mattrepl has joined #ocaml
q66 has quit [Remote host closed the connection]
pango_ has joined #ocaml
pango has quit [Ping timeout: 248 seconds]
mattrepl has quit [Quit: mattrepl]
ollehar has quit [Ping timeout: 276 seconds]
tac has joined #ocaml
yacks has joined #ocaml
everyonemines has joined #ocaml
cdidd has joined #ocaml
karswell has quit [Ping timeout: 255 seconds]
ahokaomaeha is now known as lolcathost|afk
leoncamel has quit [Ping timeout: 252 seconds]
emmanuelux has quit [Quit: emmanuelux]
lolcathost|afk has quit [Ping timeout: 252 seconds]
everyonemines has quit [Quit: Leaving.]
cdidd has quit [Remote host closed the connection]
cdidd has joined #ocaml
Yoric has joined #ocaml
sgnb has quit [Remote host closed the connection]
Yoric has quit [Ping timeout: 246 seconds]
sgnb has joined #ocaml
sgnb has quit [Read error: Connection reset by peer]
sgnb has joined #ocaml
Simgate has joined #ocaml
tac has quit [Ping timeout: 245 seconds]
Simgate has quit [Quit: Quit]
ttamttam has joined #ocaml
ttamttam has left #ocaml []
<adrien>
wmeyer: ah, I've understood why you were getting a configure-time error
<adrien>
it's fairly obvious actually
<adrien>
when cross-compiling I can't determine the sizes of short, long, int, ...
<adrien>
so I hardcode them for the platforms I'm aware of (I'm assuming only a few platforms will be used as cross-compilation targets, at least for now)
<adrien>
but the error message when your triplet isn't known wasn't clear about that
Yoric has joined #ocaml
osa1 has joined #ocaml
paddymahoney1 has joined #ocaml
paddymahoney1 is now known as paddymahoney
pango_ is now known as pango
paddymahoney has quit [Quit: Sleep...]
leoncamel has joined #ocaml
<adrien>
anyone with an ocaml from SVN? what is the output from "ocamlc -version"?
ChristopheT has joined #ocaml
<adrien>
got my answer: had a compiler from svn somewhere
chambart has joined #ocaml
tane has joined #ocaml
<orbitz>
adrien: what's the asnwer?
<adrien>
# ocamlc -version
<adrien>
4.01.0+dev10-2012-10-16
<adrien>
so the not unexpected +dev10-...
<orbitz>
is the main ocaml code on svn still? I know it' son github too
<adrien>
official is on svn
<adrien>
the git ones are clones
<adrien>
I don't know if there's an "official" clone
<orbitz>
Is there any status change on ocaml source code being lossened up to allow more external patches?
<adrien>
?
<adrien>
you've always been able to submit patches
<adrien>
at some point there were some annoyances wrt copyrights but that was quite a long time ago
<orbitz>
My understandign was that the chances are pretty small it will get in
<adrien>
and nowadays you have an active upstream :P
<orbitz>
Ah
<adrien>
active and listening
<orbitz>
I remember a lot of people complaining about the speed at which patches were getting int othe main repo
<adrien>
the development team has gotten bigger
<orbitz>
awesome!
<orbitz>
how does haskell deal with this? it seems like everyone andtheir dog submits extensions to ghc. Is that just because ghc is designred more for this extensibility, turning features on and off?
<adrien>
I don't really know
<adrien>
I know that some features or implementations haven't been getting in ocaml because they were considered too heavy, not efficient enough
<orbitz>
Ah
__YAC__ has joined #ocaml
<orbitz>
Hrm, might be an interesting thing to look at some point in my ocaml career, the ghc way seems to be putting a special comment at the start of your source to enable certain langugae features, if that could be done in a nice isolated way in the ocaml compiler you could get teh best of both worlds
__YAC__ has left #ocaml []
<adrien>
I'm not suer I like it actually :P
<orbitz>
how come?
anderse has joined #ocaml
adotbrown has joined #ocaml
<adrien>
features possibly uncompatible, unstable and unmaintained
<adrien>
great for experimenting but not more
<def-lkb>
I may say something wrong, but I think it is easier to extend GHC type system as errors can still be caught at core level
<rks_>
so?
<def-lkb>
while when hacking ocaml type system, you have to knows a lot about its internal design, and no one will tell you you made an error
<rks_>
(oh someone will)
<rks_>
but I don't think that was the main point of the discussion here
<orbitz>
if you can betold you're wrong mechanically, that's always better
<rks_>
sure, no argument therr
<rks_>
-r+e
ottbot has joined #ocaml
chambart has quit [Ping timeout: 246 seconds]
anderse has quit [Quit: anderse]
<orbitz>
wow evil
<orbitz>
my code wouldn't compile because of what was in a comment
<orbitz>
I'm guessing bitstring.syntax was runing my day
<orbitz>
ruining
<adrien>
yeah, that happens unfortunately =/
<orbitz>
why is it? i woudl figure camlp4 would preignore them or something
<adrien>
ah, no, I had something different with xstrp4
<adrien>
having a variable named "file" would prevent the code from compiling
<adrien>
leftover from a previous version of the extension :-)
<orbitz>
I had a comment (* tag << 3 | typ *) and the erro was "Comment not terminated"
<orbitz>
if i'm using ocamlfind to compile things what is the easiest way to see the outpu tof the camlp4 steps?
<adrien>
nice one
<adrien>
well, the output of camlp4 is a marshalled AST
<adrien>
so...
<orbitz>
ahh
<orbitz>
I wasthinking closer to c preprocessor
<adrien>
hmm
<adrien>
I think that -o to camlp4 outputs something readable
<orbitz>
is there any way to get teh AST out/ Sometimes it's helpful in debugging things, specially I get into issues where when I overwrite a module a camlp4 extension tries calling the wrong functions
<pippijn>
a typed ast?
<pippijn>
orbitz: ah, the comment thing.. that happened to me, before
<pippijn>
it was worse
<pippijn>
it failed to type
<orbitz>
hah
<pippijn>
because I had something like
<pippijn>
type t =
<pippijn>
| Foo (* blah blah *)
<pippijn>
| Bar (* << *)
<orbitz>
haha
<pippijn>
| Baz (* >> *)
<pippijn>
no warning
<pippijn>
but Baz was gone
<orbitz>
were you using bitstring as well? I think that's the only syntax extesion i'm usignhere
<pippijn>
no, that would happen with anything camlp4
<pippijn>
because << is a camlp4 quotation
<pippijn>
which apparently even works in comments
<pippijn>
which is stupid..
<pippijn>
(probably)
<pippijn>
I can't imagine a use case for quotations in comments
<orbitz>
ugh now i'm hitting an error that is always on the same line no matter what's there ,andthere are no comments!
<orbitz>
File "builder.ml", line 9, characters 37-38:
<orbitz>
Parse error: [semi] expected after [str_item] (in [implem])
<orbitz>
how come this doesn't typecheck: type 'a ret = ('a, [> error ]) Result.t ?
ulfdoz has joined #ocaml
<orbitz>
Error: A type variable is unbound in this type declaration.
<orbitz>
In type ('a, [> error ] as 'b) Core.Std.Result.t the variable 'b is unbound
<rks_>
because [> error ] is an open sum
<rks_>
and caml introduce an alias (the 'b)
<rks_>
which is not a parameter of your type
<rks_>
so you have to explicitly alias the [> error ] and bind the alias
<orbitz>
so type ('a, 'b) = ('a, [> error ] as 'b) Result.t ?
<rks_>
(and I say "because" but that's just what I've empirically guessed)
<rks_>
yes
<orbitz>
Is this a sign i'm doing soemthing wrong or perfectly cormulent?
<rks_>
that would do
<rks_>
well, I don't know :p
<orbitz>
:)
<rks_>
what do you want to do ?
<rks_>
more precisely:
<rks_>
why [> error ] and not [ error ] ? (which is then equivalent to having an option type)
<orbitz>
the specific case is I make heavy use of the Result monad in Core, and I have found that in order to be able to use it on functions that return different polymorphic variants I need to do [> foo ] so the compielr knows it can union the values to make a return type
<orbitz>
but I don't actually understand polymorphic variants well so I could be off here
<rks_>
you indeed need [> to be able to "merge" the types
<orbitz>
but I don't actually understand polymorphic variants well so I could be off here
<orbitz>
whops wrong key
<rks_>
:p
<rks_>
but hmm
<orbitz>
so it works if i do something like val foo : (unit, [> error ]) Result.t
<orbitz>
but I don't want to type that all the time, i'd prefer val foo : unit ret
<ollehar>
I'm gonna try ask this one more time: is there a standard way to visualize types in ocaml, in form of a diagram, e.g. UML?
<ollehar>
this lack of standard is driving me mad.
<ollehar>
and UML is not really appropriate for ocaml programs
oriba has joined #ocaml
darkf has quit [Quit: Leaving]
<ousado>
ollehar: UML has no concept of ADTs
<ollehar>
ousado: does any diagram system include adt?
<ousado>
I don't know
<ousado>
probably nothing as established as UML at least
<ollehar>
hm
mattrepl has joined #ocaml
wmeyer has quit [Remote host closed the connection]
mattrepl has quit [Client Quit]
_eko has quit [Remote host closed the connection]
_eko has joined #ocaml
karswell has joined #ocaml
ttamttam has joined #ocaml
cdidd has quit [Remote host closed the connection]
ollehar has quit [Ping timeout: 255 seconds]
ollehar has joined #ocaml
ottbot has joined #ocaml
emmanuelux has joined #ocaml
oriba has quit [Quit: oriba]
ttamttam has left #ocaml []
vivanov has joined #ocaml
<vivanov>
trying to install typerex -- ocp-edit-mode: command not found
Yoric has quit [Ping timeout: 256 seconds]
Yoric has joined #ocaml
mattrepl has joined #ocaml
<vivanov>
where can i find ocaml-parsing ?
BiDOrD_ has quit [Remote host closed the connection]
BiDOrD has joined #ocaml
Anarchos has joined #ocaml
anderse has joined #ocaml
ottbot has quit [Ping timeout: 255 seconds]
|jbrown| has quit [Remote host closed the connection]
ollehar has quit [Ping timeout: 245 seconds]
ollehar has joined #ocaml
<ollehar>
use opam?
<ollehar>
vivanov: opam?
<vivanov>
no ocaml-parsing in opam (
<ollehar>
no, but typrex can be installed without it? :)
<ollehar>
typerex in opam, that is
oriba has joined #ocaml
<vivanov>
ollehar: :) thx a lot
<ollehar>
np!
mattrepl has quit [Quit: mattrepl]
Fullma has quit [Ping timeout: 248 seconds]
Fullma has joined #ocaml
vivanov has quit [Quit: leaving]
ulfdoz has joined #ocaml
emmanuelux has quit [Read error: Connection reset by peer]
mattrepl has joined #ocaml
ollehar has quit [Ping timeout: 276 seconds]
troydm has joined #ocaml
* ulfdoz
ist bedürftig, der Staat raubt mich jeden Monat aus.
<ulfdoz>
ewin, sorry
sysopfb has joined #ocaml
sysop_fb has quit [Ping timeout: 255 seconds]
trep has joined #ocaml
sysopfb has quit [Ping timeout: 252 seconds]
ottbot has joined #ocaml
anderse has quit [Quit: anderse]
anderse has joined #ocaml
yacks has quit [Remote host closed the connection]
ollehar has joined #ocaml
leoncamel has joined #ocaml
anderse has quit [Quit: anderse]
vivanov has joined #ocaml
<vivanov>
running ubuntu with opam -- when compiling it's either opam packages or ubuntu packages -- how to combine them ? maybe smth with LD_LIBRARY_PATH ?
Simn has joined #ocaml
cyball has joined #ocaml
<oriba>
opam was a nice try, but .... "'opam install ocurl' failed."
<ollehar>
sudo?
<ollehar>
use ocamlfind
osa1 has quit [Read error: Connection reset by peer]
osa1_ has joined #ocaml
ttamttam has joined #ocaml
mattrepl has quit [Quit: mattrepl]
Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
flux has quit [Remote host closed the connection]
flux has joined #ocaml
Anarchos has joined #ocaml
ttamttam has left #ocaml []
<orbitz>
vivanov: OCAMLPATH and CAML_LD_LIBRARY_PATH
ollehar has quit [Ping timeout: 256 seconds]
osa1_ has quit [Quit: Konversation terminated!]
osa1 has joined #ocaml
ChristopheT has left #ocaml []
osa1 has quit [Client Quit]
<vivanov>
orbitz: ill try now thx
<companion_cube>
if anyone knows Jsonm, is there a way to parse multiple successive JSON values?
<companion_cube>
after the end of the first value, I get "error: expected EOI"...
FeldSon has joined #ocaml
FeldSon is now known as VGVH
VGVH is now known as Alberto
Alberto is now known as Albertos
Albertos changed the topic of #ocaml to: Caml sucks , try Maple !
Albertos changed the topic of #ocaml to: Caml sucks , try Maple !
pippijn changed the topic of #ocaml to:
Albertos changed the topic of #ocaml to: Maple Channel
<pippijn>
pity..
<pippijn>
I didn't think it would be abused
<pippijn>
I was wrong
Albertos changed the topic of #ocaml to: Obama is officially DEAD : BBC news press release
Albertos changed the topic of #ocaml to: Obama is officially DEAD : BBC news press release (and pippijn was wrong..)
<olasd>
-_-
<companion_cube>
try Maple with Proprietary -> Ocaml
Albertos changed the topic of #ocaml to: flux sucks ..
<orbitz>
rks_: I use polymorphic variants for all error sides in a Result for composability reasons, it's the only way I'm aware ofto sanely make use foteh Result monad
<orbitz>
rks_: I think build_complex might even be ok closing it since everything is returning the same error type
<rks_>
well I didn't know that
<rks_>
well, yes ok
<rks_>
but anyway
<orbitz>
rks_: it really matters more if I have compeltely separate fucntions that I want to use in the monad
<orbitz>
modularity in what not!
<rks_>
what saddens me is that you choose to use polymorphic variant in conjuction with Result.t
<rks_>
that's a good option, no argument there
<orbitz>
why does that sadden you?
<rks_>
but I'm guessing the reason you've done that
<orbitz>
I'm not sure of a better way to get the guarantees I want
<rks_>
is because it's more precise than having a big global error type
<rks_>
(which would list everything that could go wrong in your functions)
cyball has joined #ocaml
<orbitz>
a big gloabl error type is not modular and it's a pain if each function only returns a subset of errors
<rks_>
however, you lose that granularity by keeping the type open (which you have to if you want to use the sweet bind syntax)
<orbitz>
a big global wouldn't work very well for libraries
<rks_>
right
<rks_>
well then, what I want to propose is :
<rks_>
« then why don't you drop the >>= syntax in the problematic cases)
<rks_>
-)+? »
<orbitz>
rks_: in the case I asked about, I did and it worked as expected, changing it to yours let me change it back to >>=. I don't have much of a preference inthis case
<orbitz>
it's just consistent and convenient
<rks_>
oh and yes smondet, I saw that a few days ago
<rks_>
right orbitz
<rks_>
I was about to say « but considering you're writing the library, I'd rather have a precise interface than a slightly more concise code »
<rks_>
but since your user will probably face the same problem you did if they use >>=
<orbitz>
rks_: I might switch back to the more explicit code in the .ml for enum and embd_msg so I can have their types look a bit more obvious
<rks_>
yes I saw that file :)
<def-lkb>
?
testcocoon has quit [Quit: Coyote finally caught me]
<bobry>
Can somebody tell me what's wrong with using angle brackets in Scanf patterns? the following raises an EOF: Scanf.sscanf "<foo>" "<%s>" print_endline;;