thelema has quit [Read error: 110 (Connection timed out)]
electronx has joined #ocaml
threeve has quit []
seafood_ has joined #ocaml
seafood has quit [Read error: 110 (Connection timed out)]
Palace_Chan has joined #ocaml
Palace_Chan has quit [Client Quit]
electronx has quit []
thelema has joined #ocaml
Snark has joined #ocaml
johnnowak has joined #ocaml
Camarade_Tux has joined #ocaml
filp has joined #ocaml
Linktim has joined #ocaml
Linktim_ has joined #ocaml
Linktim has quit [Read error: 110 (Connection timed out)]
Yoric[DT] has joined #ocaml
<Yoric[DT]>
hi
<Yoric[DT]>
thelema: ping
Linktim has joined #ocaml
GustNG has joined #ocaml
<palomer>
hmm
<palomer>
what do you guys think of using exception for non local returns?
<palomer>
I think it stinks
<palomer>
but it seems to be the only way out!
<GustNG>
palomer: type option?
<palomer>
sometimes, very rarely, just won't cut it
<palomer>
like when you're incremental a mutable iterator
<palomer>
incremeting
<palomer>
oh heck, I'll just write a combinator for iterating
<GustNG>
That's what you get for impurity :(
middayc has joined #ocaml
Linktim_ has quit [Read error: 113 (No route to host)]
Linktim has quit [Read error: 113 (No route to host)]
<kig>
type ('a, 'b) my_exception = OK of 'a | Error of 'b
<kig>
then all you need to do is wrap / rewrite the stdlib, let wrap_ex f x = try OK (f x) with e -> Error e
<Yoric[DT]>
palomer: what exactly are you looking for?
<Yoric[DT]>
There may be a module in Batteries for that purpose.
mattam has joined #ocaml
Linktim has joined #ocaml
middayc_ has joined #ocaml
mattam has quit [Remote closed the connection]
Linktim_ has joined #ocaml
middayc has quit [Read error: 110 (Connection timed out)]
<Yoric[DT]>
thelema: ping
Linktim has quit [Read error: 110 (Connection timed out)]
Linktim has joined #ocaml
mattam has joined #ocaml
<flux>
kig, actually type 'a my_exception works just fine, exceptions are unityped - they have type exn
marmotine has joined #ocaml
<kig>
oh right, good point
Linktim_ has quit [Read error: 110 (Connection timed out)]
<Yoric[DT]>
Gasp.
<Yoric[DT]>
My latest example of batteries fails.
<Yoric[DT]>
I can't print the latest Mersenne prime :(
<flux>
yoric[dt], terrorists won??
<Yoric[DT]>
Well, OCaml blew up with "Out of memory".
<Yoric[DT]>
So yes.
<Yoric[DT]>
For the moment.
<Yoric[DT]>
Is anyone around here experienced with ocamldoc?
Axioplase_ is now known as Axioplase
filp has quit ["Bye"]
Linktim_ has joined #ocaml
haelix_ is now known as haelix
Linktim has quit [Read error: 110 (Connection timed out)]
<Yoric[DT]>
thelema: ping
middayc has joined #ocaml
Axioplase is now known as Axioplase_
middayc__ has joined #ocaml
johnnowak has quit []
seafood has joined #ocaml
seafood_ has quit [Read error: 60 (Operation timed out)]
bacam has quit [Read error: 110 (Connection timed out)]
middayc has quit [Read error: 110 (Connection timed out)]
middayc_ has quit [Read error: 110 (Connection timed out)]
* Yoric[DT]
is currently testing the GODI package for Batteries.
middayc__ has left #ocaml []
mattam has quit [Remote closed the connection]
<Yoric[DT]>
Having "truly" unbounded Big_int would be nice.
<Camarade_Tux>
Yoric[DT], never used Big_int, what are the current limitations ?
middayc has joined #ocaml
<Yoric[DT]>
It fails with "out-of-memory" for some big integers (they're quite big, sure, but they fit in memory).
Associat0r has joined #ocaml
<guyzmo>
hi, I have built a tree with different types (type expr = Binop of binop | Const of const and binop = Add of expr*expr | Sub of expr*expr and const = Int of int | Float of float), with ocamllex/ocamlyacc
<guyzmo>
and now I want to print them out so I can check everything's fine, so I've done let rec print_tree t = match t with Binop(b) -> print_string "Binop" ; print_tree b | Const(c) -> ... | Add(e,e) -> ... | Float(f) -> ... | Int(i) -> ...
<guyzmo>
and I'm getting an error when compiling that function "This pattern matches values of type expr but is here used to match values of type binop"
<flux>
yoric[dt], larger than 16 megabytes?
<guyzmo>
so if I'm not stupid, that means that I shouldn't pattern match different types inside one pattern matching clause
<Yoric[DT]>
flux: it seems so.
<Yoric[DT]>
flux: I was trying to print the latest Mersenne prime.
<Yoric[DT]>
I think it's actually 13 Mb but I may be wrong.
<guyzmo>
but then, here is my question: how can I parse my tree, that does contains different datatypes ?
<thelema>
Yoric[DT]: pong
Linktim has joined #ocaml
Linktim has quit [Client Quit]
<Camarade_Tux>
Yoric[DT], thanks, I always thought bigints used lists, weird (now, back to webkit-gtk)
<grirgz>
guyzmo: print_tree b <-- b is not of type expr
<grirgz>
i think you should do a print_binop and a print_expr functions
<grirgz>
and then a print_tree
<guyzmo>
grirgz - ok
<Yoric[DT]>
thelema: I've started the release process.
<Yoric[DT]>
thelema: any word on your examples?
<thelema>
yes, we need a small patch in rope.mli
<Yoric[DT]>
Gasp.
<Yoric[DT]>
Ok, which one?
<thelema>
after [open camomileLibrary], add [open ExtUChar]
* Yoric[DT]
retracts the released file from the Forge.
<thelema>
and there's no of_latin1 in the .mli
<thelema>
+val of_latin1 : string -> t
<thelema>
+ (** Constructs a unicode rope from a latin-1 string. *)
<thelema>
+
<Yoric[DT]>
Ok.
<Yoric[DT]>
Is that it?
<thelema>
We may think on why the first works to fix a type bug, but the second is just an oversight.