caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] Camomile-0.5.0
@ 2004-04-15 16:25 Yamagata Yoriyuki
  2004-04-15 17:22 ` skaller
  0 siblings, 1 reply; 4+ messages in thread
From: Yamagata Yoriyuki @ 2004-04-15 16:25 UTC (permalink / raw)
  To: caml-list, ocaml-i18n

Camomile-0.5.0, a new version of Camomile, is available from
http://prdownloads.sourceforge.net/camomile/camomile-0.5.0.tar.bz2

Camomile is a comprehensive Unicode library for OCaml.  Changes from
the previous version are,

* Internationalized Pervasives, Char, String, Buffer modules
* Search strings by matching collation
* Binding to ISO C Locale.
  - UChar.is_printable
  - Locale.current_locale, Locale.set_locale
  - CharEncoding.enc_name
* New encodings
  - iso_c_locale : the encoding specified by the current LC_CTYPE locale.
  - CP932
* Packed and unpacked libraries.

More information is available from our homepage
http://camomile.sourceforge.net/

Also, I invite everyone interested in Camomile to join our mailing
list.
http://lists.sourceforge.net/lists/listinfo/camomile-devel

--
Yamagata Yoriyuki

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Caml-list] Camomile-0.5.0
  2004-04-15 16:25 [Caml-list] Camomile-0.5.0 Yamagata Yoriyuki
@ 2004-04-15 17:22 ` skaller
  2004-04-15 17:34   ` Shawn Wagner
  2004-04-16 14:32   ` Yamagata Yoriyuki
  0 siblings, 2 replies; 4+ messages in thread
From: skaller @ 2004-04-15 17:22 UTC (permalink / raw)
  To: Yamagata Yoriyuki; +Cc: caml-list, ocaml-i18n

On Fri, 2004-04-16 at 02:25, Yamagata Yoriyuki wrote:

> Camomile is a comprehensive Unicode library for OCaml.  Changes from
> the previous version are,
> 
> * Internationalized Pervasives, Char, String, Buffer modules

Yea! 

> * Search strings by matching collation
> * Binding to ISO C Locale.

I have a question here. The C locale concept does need
a binding, unfortunately. However it is well known
this is a seriously deficient hack, and the use
of C locales should be strongly discouraged.

C++ uses an imperfect but much better concept: locale's
are independent objects which can be passed as arguments
to locale sensitive operations.

So there is an ISO Standard for handling locale information
properly, albiet a C++ one.

In the C world a number of different strategies are used
to handle this problem. Microsoft is the most advanced,
having several different API available for i18n support.
Unix solutions also exist .. more than one :D

I an wondering what your ideas are for the way forward
for Ocaml. 

-- 
John Skaller, mailto:skaller@users.sf.net
voice: 061-2-9660-0850, 
snail: PO BOX 401 Glebe NSW 2037 Australia
Checkout the Felix programming language http://felix.sf.net



-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Caml-list] Camomile-0.5.0
  2004-04-15 17:22 ` skaller
@ 2004-04-15 17:34   ` Shawn Wagner
  2004-04-16 14:32   ` Yamagata Yoriyuki
  1 sibling, 0 replies; 4+ messages in thread
From: Shawn Wagner @ 2004-04-15 17:34 UTC (permalink / raw)
  To: caml-list

On Fri, Apr 16, 2004 at 03:22:00AM +1000, skaller wrote:
> On Fri, 2004-04-16 at 02:25, Yamagata Yoriyuki wrote:
> 
> > Camomile is a comprehensive Unicode library for OCaml.  Changes from
> > the previous version are,
> > 
> > * Internationalized Pervasives, Char, String, Buffer modules
> 
> Yea! 
> 
> > * Search strings by matching collation
> > * Binding to ISO C Locale.
> 
> I have a question here. The C locale concept does need
> a binding, unfortunately. However it is well known
> this is a seriously deficient hack, and the use
> of C locales should be strongly discouraged.

Extlib supports the standard C locale functions (setlocale, the ctype.h
character classification functions, strcoll, localeconv, etc.) It doesn't
try to work around any of the problems with the C locale model, but it's
better than nothing.

http://raevnos.pennmush.org/code/extlib/


-- 
Shawn Wagner
shawnw@speakeasy.org

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Caml-list] Camomile-0.5.0
  2004-04-15 17:22 ` skaller
  2004-04-15 17:34   ` Shawn Wagner
@ 2004-04-16 14:32   ` Yamagata Yoriyuki
  1 sibling, 0 replies; 4+ messages in thread
From: Yamagata Yoriyuki @ 2004-04-16 14:32 UTC (permalink / raw)
  To: skaller; +Cc: caml-list, ocaml-i18n

From: skaller <skaller@users.sourceforge.net>
Subject: Re: [Caml-list] Camomile-0.5.0
Date: 16 Apr 2004 03:22:00 +1000

> I have a question here. The C locale concept does need
> a binding, unfortunately. However it is well known
> this is a seriously deficient hack, and the use
> of C locales should be strongly discouraged.
> 
> C++ uses an imperfect but much better concept: locale's
> are independent objects which can be passed as arguments
> to locale sensitive operations.

Camomile has its own locale, and you can (optionally) pass them to the
locale-sensitive functions.  On the other hand, the functions in
I18N-ed stdlib use C locale *name* to guess the default locale.
Another use of C locale is code-conversion for standard IO.

Binding of C locale functions in Camomile is minimal, just sufficient
to achieve these purpose.  This is because C locale has portability
problems (wch could be even 8-bits, and may not be unicode, and so
on.) and generally weak functionality.  Another reason is that I want
Camomile strictly follow Unicode Standard, while ISO-C does not.

As OCaml on the whole, I think the best strategy would depend on
application.  Desktop applications would required to be consistent
with other C applications, so using OS functions (for example Glib
one, or Win API) would be best.  For a network application, on the
other hand, platform-independence would be desirable.  For such a
case, Camomile like approach (everything implemented by OCaml) would
be better.

--
Yamagata Yoriyuki

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2004-04-16 14:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-04-15 16:25 [Caml-list] Camomile-0.5.0 Yamagata Yoriyuki
2004-04-15 17:22 ` skaller
2004-04-15 17:34   ` Shawn Wagner
2004-04-16 14:32   ` Yamagata Yoriyuki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).