You can subscribe to this list here.
2003 |
Jan
|
Feb
(81) |
Mar
(97) |
Apr
(88) |
May
(80) |
Jun
(170) |
Jul
(9) |
Aug
|
Sep
(18) |
Oct
(58) |
Nov
(19) |
Dec
(7) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(22) |
Feb
(9) |
Mar
(28) |
Apr
(164) |
May
(186) |
Jun
(101) |
Jul
(143) |
Aug
(387) |
Sep
(69) |
Oct
(14) |
Nov
(8) |
Dec
(99) |
2005 |
Jan
(10) |
Feb
(34) |
Mar
(24) |
Apr
(7) |
May
(41) |
Jun
(20) |
Jul
(3) |
Aug
(23) |
Sep
(2) |
Oct
(26) |
Nov
(41) |
Dec
(7) |
2006 |
Jan
(6) |
Feb
(3) |
Mar
(11) |
Apr
|
May
|
Jun
(5) |
Jul
(8) |
Aug
(20) |
Sep
|
Oct
(6) |
Nov
(5) |
Dec
|
2007 |
Jan
|
Feb
(1) |
Mar
|
Apr
(3) |
May
(2) |
Jun
|
Jul
|
Aug
(1) |
Sep
(7) |
Oct
(6) |
Nov
(19) |
Dec
(11) |
2008 |
Jan
|
Feb
(7) |
Mar
(9) |
Apr
(21) |
May
(42) |
Jun
(27) |
Jul
(28) |
Aug
(26) |
Sep
(16) |
Oct
(32) |
Nov
(49) |
Dec
(65) |
2009 |
Jan
(35) |
Feb
(20) |
Mar
(36) |
Apr
(42) |
May
(111) |
Jun
(99) |
Jul
(70) |
Aug
(25) |
Sep
(15) |
Oct
(29) |
Nov
(3) |
Dec
(18) |
2010 |
Jan
(10) |
Feb
(4) |
Mar
(57) |
Apr
(63) |
May
(71) |
Jun
(64) |
Jul
(30) |
Aug
(49) |
Sep
(11) |
Oct
(4) |
Nov
(2) |
Dec
(3) |
2011 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(1) |
2024 |
Jan
(1) |
Feb
(3) |
Mar
(6) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2025 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(5) |
Oct
|
Nov
|
Dec
|
From: Nicolas C. <war...@fr...> - 2004-12-16 09:11:58
|
> Appending a DynArray of length > 1 to an empty DynArray causes the > program to hang: Thanks for the report Peter. The resizer was entering an infinite loop when asked to grow from 0 to 2 :'( It's now fixed on CVS. Nicolas Cannasse |
From: Peter J. <pe...@jo...> - 2004-12-16 00:33:31
|
Appending a DynArray of length > 1 to an empty DynArray causes the program to hang: # let d = DynArray.create () and e = DynArray.create ();; val d : '_a DynArray.t = <abstr> val e : '_a DynArray.t = <abstr> # DynArray.add e 0; DynArray.add e 0;; - : unit = () # DynArray.append e d;; (* hangs *) The append call succeeds when length d <= 1. This is with ExtLib 1.3 in OCaml 3.08.1 and 3.09+dev1. |
From: Janne H. <ja...@hy...> - 2004-12-09 19:52:56
|
Hello, I believe I have found a bug in function OptParse.OptParser.make. The documentation states that "Any occurrence of the substring "%prog" in usage is replaced with the name of the program". This suggests that all occurrences of that string are replaced. This is not the case: the substitution of %prog (unprogify in optParse.ml) uses ExtString.String.replace internally, which replaces only the first matching %prog. * * Has there been any discussion on providing examples on how to use extlib? I think using OptParse would be easier if there were some simple example applications around. Does there exist a regression test suite for extlib? Btw: I upgraded the GODI package for extlib to use the new 1.3 version yesterday. Best regards, Janne Hellsten |
From: Boris Y. <bo...@ya...> - 2004-11-16 15:49:28
|
Hi, I've started using IO for one of my projects, but I've found it to lack a Printf.bprintf-like function, which would permit to use "%a" formats more easily. For example, Xml printing can be written as let rec print_xml o xml = function | Text t -> nwrite o t | Tag (name, args, xml) -> bprintf "<%s%a>%a</%s> name print_args args print_lxml xml s and print_args o args = ... and print_lxml o args = ... With the current printf function, you have no such syntax. I propose to add this function, based on the existing code of bprintf in the ocaml distribution: val bprintf : 'a output -> ('b, 'a output, unit, unit) format4 -> 'b let rec bprintf dest fmt = let fmt = string_of_format fmt in let len = String.length fmt in let rec doprn i = if i >= len then Obj.magic () else match String.unsafe_get fmt i with | '%' -> Printf.scan_format fmt i cont_s cont_a cont_t cont_f cont_m | c -> write dest c; doprn (i+1) and cont_s s i = nwrite dest s; doprn i and cont_a printer arg i = printer dest arg; doprn i and cont_t printer i = printer dest; doprn i and cont_f i = doprn i and cont_m sfmt i = bprintf dest sfmt; doprn i in doprn 0 -- Boris [please CC-me as I'm not subscribed] |
From: Koprowski, A. <A.K...@tu...> - 2004-11-10 10:55:18
|
> -----Original Message-----: Martin Jambon > I just played a little, and here is the result, just for fun (you > probably can find nicer implementations somewhere on the web, > and I don't know what you can do with enums here): > [...] > -----Original Message-----: Nicolas Cannasse > Well partition could be easily added to Enum Something like : > [...] > But I'm not sure we should add it to Enum module because it creates a=20 > unwelcomed dependency on the Queue module. Hello,=20 Thank you for both solutions! I think I'll indeed write my implementation of lazy lists (maybe based on Martin's proposition), I just though that it is so obvious that it should be already available somewhere.=20 Also thanks for suggestions about Enums, I wouldn't come up with this solution... but anyway I think for what I'm doing I'd rather prefer strictly functional (immutable) data structure so I'll save Enums for another time :-). Regards, Adam Koprowski ------------------------------------------------------------------------ - A.K...@tu..., ICQ: 3204612 - - The difference between impossible and possible lies in determination - - Tommy Lasorda - ------------------------------------------------------------------------ =20 |
From: Nicolas C. <war...@fr...> - 2004-11-09 19:02:58
|
> Anybody has any idea of some lazy lists implementation in Ocaml? Well partition could be easily added to Enum Something like : val partition : ('a -> bool) -> 'a Enum.t -> 'a Enum.t * 'a Enum.t The implementation itself is quite easy : let partition f t = let mem_true = Queue.create() in let mem_false = Queue.create() in let next b () = try Queue.pop (if b then mem_true else mem_false) with Queue.Empty -> let rec loop() = let x = t.next() in if f x = b then x else begin Queue.push x (if b then mem_false else mem_true); loop(); end; in loop() in from (next true) , from (next false) But I'm not sure we should add it to Enum module because it creates a unwelcomed dependency on the Queue module. Regards, Nicolas Cannasse |
From: Martin J. <mar...@em...> - 2004-11-09 18:50:09
|
On Tue, 9 Nov 2004, Koprowski, A. wrote: > Hello, > > Anybody has any idea of some lazy lists implementation in Occaml? > > Initially I thought that ExtLib's Enums will do the work but what I > don't like about them is that operations like map, filter etc. consume > the enumeration. Now, for me it's crucial to have a partition function. > So let's say I have list 'l' and I want to partition it into 'm' and > 'n'. I want everything to be computed in a lazy fashion so forcing 'l' > is out of question. Also assume that computation yielding 'l' is > expensive so cloning it and using to produce 'm' and 'n' separately > (thus computing twice) is also not on option. Can I do it somehow with > Enums? And if not: does anybody know, hopefully positive, answer to the > question posed at the beginning of this post? I just played a little, and here is the result, just for fun (you probably can find nicer implementations somewhere on the web, and I don't know what you can do with enums here): type 'a lazy_list = Cons of 'a Lazy.t * 'a lazy_list Lazy.t | Empty type 'a t = 'a lazy_list Lazy.t let rec force l = match Lazy.force l with Cons (x, rest) -> Lazy.force x :: force rest | Empty -> [] let to_list = force let rec of_list l = lazy (match l with [] -> Empty | x :: rest -> Cons (lazy x, of_list rest)) let rec map f l = lazy (match Lazy.force l with Cons (x, rest) -> Cons (lazy (f (Lazy.force x)), map f rest) | Empty -> Empty) let rec filter f l = let rec find_node l = match Lazy.force l with Cons (x, rest) -> if f (Lazy.force x) then Cons (x, filter f rest) else find_node rest | Empty -> Empty in lazy (find_node l) let partition f l = let l' = map (fun x -> (x, f x)) l in let m = map fst (filter (fun (x, b) -> b) l') in let n = map fst (filter (fun (x, b) -> not b) l') in (m, n) # let (m,n) = partition (fun x -> print_int x; x <= 4) (of_list [1;3;5;2;7]);; val m : int lazy_list Lazy.t = <lazy> val n : int lazy_list Lazy.t = <lazy> # to_list m;; 13527- : int list = [1; 3; 2] # to_list n;; - : int list = [5; 7] # to_list m;; - : int list = [1; 3; 2] Martin -- Martin Jambon, PhD Researcher in Structural Bioinformatics since the 20th Century The Burnham Institute http://www.burnham.org San Diego, California |
From: Koprowski, A. <A.K...@tu...> - 2004-11-09 13:56:04
|
Hello, Anybody has any idea of some lazy lists implementation in Occaml?=20 Initially I thought that ExtLib's Enums will do the work but what I don't like about them is that operations like map, filter etc. consume the enumeration. Now, for me it's crucial to have a partition function. So let's say I have list 'l' and I want to partition it into 'm' and 'n'. I want everything to be computed in a lazy fashion so forcing 'l' is out of question. Also assume that computation yielding 'l' is expensive so cloning it and using to produce 'm' and 'n' separately (thus computing twice) is also not on option. Can I do it somehow with Enums? And if not: does anybody know, hopefully positive, answer to the question posed at the beginning of this post? Thanks in advance for any help, Regards, Adam Koprowski =20 ------------------------------------------------------------------------ - A.K...@tu..., ICQ: 3204612 - - The difference between impossible and possible lies in determination - - Tommy Lasorda - ------------------------------------------------------------------------ =20 |
From: Bardur A. <oca...@sc...> - 2004-11-05 13:12:36
|
On Fri, Nov 05, 2004 at 10:20:28AM +0100, Bardur Arantsson wrote: [--snip--] Bah! Please ignore; I'm stupid. :) -- Bardur Arantsson <ba...@im...> <ba...@sc...> - And the best part? I didn't learn a thing. |
From: Bardur A. <oca...@sc...> - 2004-11-05 09:20:53
|
Hi all, I was wondering if there would be any objection to me adding a ~really_close optional parameter to the IO.input_channel IO.output_channel functions? It's very useful in the event that you just want to create local IO "objects" (for convenience) from channels without having to change everything to work with IOs instead of channels. (Output channels will of course do a flush instead of close for the output_channel if the ~really_close flag is not set.) Cheers, -- Bardur Arantsson <ba...@im...> <ba...@sc...> - Jeg var ret barnlig da jeg var lille. Lasse Rimmer |
From: Richard J. <ri...@an...> - 2004-11-02 22:52:04
|
On Tue, Nov 02, 2004 at 08:07:25PM +0100, Vincent Balat wrote: > ocamlc -w s -I /opt/godi/lib/ocaml/pkg-lib/extlib -I /opt/godi/lib/ocaml/= pkg-lib/pcre -I +apache -I +pcre -I +dbi -I +extlib -I +netstring -I +grego= riandate -I lib -c lib/cocanwiki.ml > The files lib/cocanwiki_ok.cmi > and /opt/godi/lib/ocaml/std-lib/dbi/dbi_postgres.cmi > make inconsistent assumptions over interface Dbi > make[1]: *** [lib/cocanwiki.cmo] Erreur 2 > make[1]: Leaving directory `/home/balat/prog/cocanwiki/cocanwiki-1.3.3/sc= ripts' > make: *** [all] Erreur 2 Do you have several versions of ``dbi'' around? Actually it's possible that you have one version in extlib and another version from GODI / ocamldbi. I'm CC-ing this message to the extlib development list because I think this is going to continue to be a problem with Dbi partially in and partially out of extlib ... Rich. --=20 Richard Jones. http://www.annexia.org/ http://www.j-london.com/ >>> http://www.team-notepad.com/ - collaboration tools for teams <<< Merjis Ltd. http://www.merjis.com/ - improving website return on investment http://execellence.co.uk/ - Interim and executive recruitment |
From: Nicolas C. <war...@fr...> - 2004-10-31 09:42:28
|
> Let's talk about it :) > Pro and cons of boths ? > Comments anyone ? > > Nicolas After having a look at both GregorianDate and Julien's calendar interface, my opinion is that a simplified Julien's calendar version would suit better ExtLib. Simplified would mean having at most 2 modules : Date and Time, if we keep separated, or only one module Date storing both day and time. This/theses two modules should include most of basic operations, and some advanced ones that are difficult to implement. Modules should be as "flat" as possible (no sub module Period or functor usage needed). Since the current sources are around 60 K (with some code duplication in calendar) I think it's not a difficult task. Everybody on this list can contribute thoughts and comments on what should/shouldn't be in the final interface. Regards Nicolas Cannasse |
From: Richard J. <ri...@an...> - 2004-10-31 09:34:17
|
Mixing up dates and times in one module is a really bad idea, because I predict that at some point you'll want to rewrite all the time manipulation. Dealing with times is very complex. Dates: you probably want to involve "Gregorian" in the name of the date or calendar module, because again at some point in the future it might be nice to add support for other types of calendar (eg. Julian, or the Nengou(?) calendar used in Japan). Rich. --=20 Richard Jones. http://www.annexia.org/ http://www.j-london.com/ >>> http://www.team-notepad.com/ - collaboration tools for teams <<< Merjis Ltd. http://www.merjis.com/ - improving website return on investment Write Apache modules in OCaml - http://www.merjis.com/developers/mod_caml |
From: Julien S. <Jul...@lr...> - 2004-10-29 15:18:27
|
On Fri, 29 Oct 2004, Richard Jones wrote: > On Fri, Oct 29, 2004 at 04:31:15PM +0200, Julien Signoles wrote: > > # let business_of_standard d = week d, day_of_week d;; > > val business_of_standard : Date.t -> int * Date.day = <fun> > > Actually, come to think of it, even if you sort out the year problem > this still may not work. You'll need to have a look at how it's > implemented in GregorianDate. I checked that implementation for > correctness pretty thoroughly. Concerning the implementation problem: business_of_standard is not so difficult but, yes, standard_of_business is a little bit more technical. So I will add these functions in calendar before the next release. Concerning the "correctness" problem: I think that this problem is not exactly the same in calendar: all the dates are correct (except a special case) if you follow the "coercion rule" explained at the beginning of the module Date: ========== If a date d does not exists and if d_bef (resp. d_aft) is the last (resp. first) existing date before (resp. after) d, d is automatically coerced to d_aft + d - d_bef - 1. For example, both dates "February 29th, 2003" and "February 30th, 2003" do not exist and they are coerced respectively to the date "Mars 1st, 2003" and "Mars 2nd, 2003". This rule is called the coercion rule. As an exception to the coercion rule, the date belonging to [October 5th, 1582; October 14th, 1582] do not exist and an Undefined exception is raised if you attempt to create such a date. Those dropped days correspond to the change from the Julian to the Gregorian calendar. ========== This rule is a choice. So one can discuss it for a long time ;-). It was made because all the algorithms correctly work with it. However I think I can have two versions of make: * a "safe" version as you have in GregorianDate * an "unsafe" version as I have yet in calendar (but, of course, safe as regards the coercion rule) I think that I will provide both versions in the next release. -- Julien |
From: Richard J. <ri...@an...> - 2004-10-29 14:42:38
|
On Fri, Oct 29, 2004 at 04:31:15PM +0200, Julien Signoles wrote: > # let business_of_standard d =3D week d, day_of_week d;; > val business_of_standard : Date.t -> int * Date.day =3D <fun> Actually, come to think of it, even if you sort out the year problem this still may not work. You'll need to have a look at how it's implemented in GregorianDate. I checked that implementation for correctness pretty thoroughly. Rich. --=20 Richard Jones. http://www.annexia.org/ http://www.j-london.com/ >>> http://www.team-notepad.com/ - collaboration tools for teams <<< Merjis Ltd. http://www.merjis.com/ - improving website return on investment http://winwinsales.co.uk/ - CRM consultancy |
From: Richard J. <ri...@an...> - 2004-10-29 14:40:21
|
On Thu, Oct 28, 2004 at 04:20:39PM +0200, Christoph Bauer wrote: > Hello, >=20 > I would like to store an Int64.t in a DB trough the Dbi-module of > extlib. How is this possible? I would expect an `Int64 variant in Dbi.sql= _t > or somthing like Decimat.of_int64. Dbi needs to be extended to handle Int64.t types. It's fairly trivial to do this. I suggest you check out ocamldbi from CVS here: https://savannah.nongnu.org/cvs/?group=3Dmodcaml Rich. --=20 Richard Jones. http://www.annexia.org/ http://www.j-london.com/ >>> http://www.team-notepad.com/ - collaboration tools for teams <<< Merjis Ltd. http://www.merjis.com/ - improving website return on investment http://winwinsales.co.uk/ - CRM consultancy |
From: Richard J. <ri...@an...> - 2004-10-29 14:38:32
|
On Fri, Oct 29, 2004 at 04:31:15PM +0200, Julien Signoles wrote: > With the module Date of calendar, you have: >=20 > # let business_of_standard d =3D week d, day_of_week d;; > val business_of_standard : Date.t -> int * Date.day =3D <fun> =2E.. except the difficult thing with business weeks is that business year is not necessarily equal to ordinary year. (Even PostgreSQL 7.4 gets this wrong). > # business_of_standard (make 2004 12 31);; > - : int * Date.day =3D (53, Fri) > # business_of_standard (make 2003 12 31);; > - : int * Date.day =3D (1, Wed) >=20 > In my opinion, it is the same except that my version does not return > the year. But it is possible to deduce it from the month and the week if > necessary. It's not ... or at least not trivially. Check out the implementation in GregorianDate. Rich. --=20 Richard Jones. http://www.annexia.org/ http://www.j-london.com/ >>> http://www.team-notepad.com/ - collaboration tools for teams <<< Merjis Ltd. http://www.merjis.com/ - improving website return on investment Write Apache modules in OCaml - http://www.merjis.com/developers/mod_caml |
From: Julien S. <Jul...@lr...> - 2004-10-29 14:31:26
|
> On Fri, Oct 29, 2004 at 03:38:36PM +0200, Julien Signoles wrote: > > (a) those dealing with the "business week"; > > (b) nth_weekday_of_month; > > (c) the optional parameter ?month of days_in_year. > > But (b) and (c) will be available in the next release of calendar (soon !). > > At this day, I don't understand what is a "business week" :-(. > > Business weeks are vital for me. They're the whole reason I ported > Date::Calc in the first place. ok. I've seen again what is the business week and now I understand it :-). With GregorianDate, you have: # business_of_standard (2004, 12, 31);; - : (int * int) * int = ((2004, 53), 5) # business_of_standard (2003, 12, 31);; - : (int * int) * int = ((2004, 1), 3) With the module Date of calendar, you have: # let business_of_standard d = week d, day_of_week d;; val business_of_standard : Date.t -> int * Date.day = <fun> # business_of_standard (make 2004 12 31);; - : int * Date.day = (53, Fri) # business_of_standard (make 2003 12 31);; - : int * Date.day = (1, Wed) In my opinion, it is the same except that my version does not return the year. But it is possible to deduce it from the month and the week if necessary. Of course, it is possible to convert a Date.day value to an int (and conversely): # int_of_day Fri;; - : int = 5 So I think I have no functionality to add in calendar in order to deal with the business week but, please, tell me if I miss something. Julien -- mailto:Jul...@lr... ; http://www.lri.fr/~signoles "In theory, practice and theory are the same, but in practice they are different" (Larry McVoy) |
From: Richard J. <ri...@an...> - 2004-10-29 13:53:43
|
On Fri, Oct 29, 2004 at 03:38:36PM +0200, Julien Signoles wrote: > (a) those dealing with the "business week"; > (b) nth_weekday_of_month; > (c) the optional parameter ?month of days_in_year. > But (b) and (c) will be available in the next release of calendar (soon != ). > At this day, I don't understand what is a "business week" :-(. Business weeks are vital for me. They're the whole reason I ported Date::Calc in the first place. Rich. --=20 Richard Jones. http://www.annexia.org/ http://www.j-london.com/ >>> http://www.team-notepad.com/ - collaboration tools for teams <<< Merjis Ltd. http://www.merjis.com/ - improving website return on investment http://winwinsales.co.uk/ - CRM consultancy |
From: Julien S. <Jul...@lr...> - 2004-10-29 13:38:48
|
On Fri, 29 Oct 2004, Richard Jones wrote: > On Thu, Oct 28, 2004 at 11:33:30PM -0400, N. Owen Gunden wrote: > > Bump. Rich? > > Ah, sorry - this discussion moved to ocaml-lib-devel. I cc'd > caml-list, but it seems to have been spam filterered. > > http://sourceforge.net/mailarchive/forum.php?thread_id=5833296&forum_id=29880 ok. I didn't know this mailing list. I give my point of view. I try to be neutral ;-). 1) I download "cf" (version 0.4) and it seems that Cf_date is now called Cf_gregogian. 2) Cf_gregorian only defines 6 functions to convert a gregorian date to the Julian Day and conversely. These functions exists in the module Date of calendar. The calendar algorithms seem to be more efficient. However they only work in the date in [January, 1st 4713 BC; January 22th, 3268 AC] (against [12 Aug -2937947 CE; 27 Feb 2935093] for Cf_gregorian). It seems that these functions don't exist in GregorianDate. 3) Almost the functions of GregorianDate are available in the module Date of calendar except: (a) those dealing with the "business week"; (b) nth_weekday_of_month; (c) the optional parameter ?month of days_in_year. But (b) and (c) will be available in the next release of calendar (soon !). At this day, I don't understand what is a "business week" :-(. 4) Date in calendar deals with the gregorian calendar *and* the julian calendar. I think it is a pro in some applications and a cons in others... 5) Some operations of Date are not available in GregorianDate. In particular, a lot of arithmetics operations and the coercions with Unix (of the stdlib) are not provided. I think that these functions are useful. 5) Calendar doesn't only deal with dates but also with times. It also provides printers. More details in the doc: http://www.lri.fr/~signoles/prog/calendar/doc/index.html Conclusion: =========== I think calendar is more complete that GregorianDate and Cf_gregorian. I'm not sure but it also seems to be the oldest. First release and announce on the caml-list: 2003-07-11, see here: http://caml.inria.fr/archives/200307/msg00108.html Cheers, Julien -- mailto:Jul...@lr... ; http://www.lri.fr/~signoles "In theory, practice and theory are the same, but in practice they are different" (Larry McVoy) |
From: Christoph B. <ic...@ch...> - 2004-10-28 14:11:44
|
Hello, I would like to store an Int64.t in a DB trough the Dbi-module of extlib. How is this possible? I would expect an `Int64 variant in Dbi.sql_t or somthing like Decimat.of_int64. Thanks, Christoph Bauer -- let () = let rec f a w i j = Printf.printf "%.20f\r" a; let a1 = a *. i /. j in if w then f a1 false (i +. 2.0) j else f a1 true i (j +. 2.0) in f 2.0 false 2.0 1.0 |
From: Nicolas C. <war...@fr...> - 2004-10-26 07:43:39
|
Hi list, ExtLib 1.3 is available through Sourceforge : http://ocaml-lib.sf.net ExtLib is a project aiming at providing a complete - yet small - standard library for the OCaml programming langage. The purpose of this library is to add new functions to OCaml Standard Library modules, to modify some functions in order to get better performances or more safety (tail-recursive) but also to provide new modules which should be useful for the average OCaml programmer. Changes for 1.3 : - new module OptParse (by Bardur Arantsson) : GNU [getopt(3)]-style command line parsing - new module Dllist (by Jesse Guardiani and Brian Hurt) : A mutable, imperative, circular, doubly linked list - fixed bugs in Bitset and IO modules - and some minor other changes... Nicolas Cannasse |
From: Richard W.M. J. <ri...@me...> - 2004-10-25 13:22:58
|
On Mon, Oct 25, 2004 at 10:20:15PM +0900, Nicolas Cannasse wrote: > Let's talk about it :) > Pro and cons of boths ? > Comments anyone ? There seem to be three contenders, if you include Cf_date which I haven't had a chance to look at. Julien's is more complete than GregorianDate. The interface for GregorianDate is attached to this message if you wish to compare. Rich. -- Richard Jones. http://www.annexia.org/ http://www.j-london.com/ >>> http://www.team-notepad.com/ - collaboration tools for teams <<< Merjis Ltd. http://www.merjis.com/ - improving website return on investment http://youunlimited.co.uk/ - Personal improvement courses |
From: Nicolas C. <war...@fr...> - 2004-10-25 13:21:03
|
Let's talk about it :) Pro and cons of boths ? Comments anyone ? Nicolas |
From: Richard J. <ri...@an...> - 2004-10-25 13:09:52
|
One of these libraries really ought to be a candidate for inclusion in extlib ... Rich. --=20 Richard Jones. http://www.annexia.org/ http://www.j-london.com/ >>> http://www.team-notepad.com/ - collaboration tools for teams <<< Merjis Ltd. http://www.merjis.com/ - improving website return on investment http://winwinsales.co.uk/ - CRM consultancy |