Panel on Open Source Approaches to Unicode Enablement

Download Report

Transcript Panel on Open Source Approaches to Unicode Enablement

Open-Source Approaches to Unicode
Enablement
Panel Discussion
Panel on Open-Source Approaches to Unicode Enablement
Agenda





Panel Introductions
Library Descriptions and Demos
What is Open Source?
What is the Open Source experience?
Q and A
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Today’s Panel




Frank Tang
Helena Shih
Ulrich Drepper
Tex Texin
17th International Unicode Conference
Netscape
ICU
glibc
Moderator
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Library Descriptions and Demos

GNU libc
http://sourceware.cygnus.com/glibc

Mozilla: International Library of Mozilla
http://www.mozilla.org/projects/intl

IBM: International Components for
Unicode
http://oss.software.ibm.com/icu
17th International Unicode Conference
San Jose, California, September 2000
International Library for Mozilla
Frank Tang
Netscape Communications
Mozilla
GNU Libc
Ulrich Drepper
GNU, RedHat
Panel on Open-Source Approaches to Unicode Enablement
GNU libc




Library supporting multibyte and wide
characters
localedef tool allows definition of locales
for any charsets, including UTF8, UCS2
using charset requires just a description
and a conversion module
Wide character is UCS-4, native byte
order
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
GNU libc conversion functions


iconv() implementation is unique
Conversions are transitive
A to C = A to B to C

In most cases, UCS-4 is used as
common denominator
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Licensing & Development
Process






RedHat is completely open source.
Code is licensed as LGPL, assigned to
Free Software Foundation (FSF)
This is the same method as GNU
Small teams of developers with a
“dictatorial decision maker”.
Comments accepted, taken into account
Extensive peer reviewing
17th International Unicode Conference
San Jose, California, September 2000
International Components for Unicode
(ICU)
Helena Shih
IBM Unicode Technology Center
Panel on Open-Source Approaches to Unicode Enablement
Unicode support in the Industry






Lack of a complete set of features in most
implementations.
Inconsistent across different environments.
Win32 vs. POSIX, for example.
Poor portability.
Unable to share the resources with other
products.
Almost no extensibility and customization.
Not a concern for most companies when a
product is first designed.
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Netfinity Server
Apple G3 Macintosh
I
I
C
IBM’s DB/2 Product
C
U
U
AS/400 e-Server 720
Microsoft NT Workstation
World Wide Web
S/390 Server
17th International Unicode Conference
Sun Ultra 60 Workstation
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
ICU Objectives

Single release for world-wide distribution

Quality Unicode & I18N support across
platforms

Simplified development localization process

Consistent results in both C/C++ and Java

Powerful, portable API available to the OpenSource development community

Important resources sharing mechanism
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
ICU Features






Parallel to the i18n architecture in JDK
All components multi-thread safe
Full Unicode string manipulation
Complete locale support, e.g. > 145
locales
Fast and flexible character set
conversion
Efficient data loading mechanism
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
ICU Features





Hierarchical resource bundles with
flexible data storage mechanism
Extensive calendar and timezone
support
Date, time, currency, number and
message formatting
Locale sensitive sorting (including Thai)
Locale sensitive text boundary detection
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
ICU Features






Customizable transliteration interface
Unicode text compression algorithm
Fast and compliant Unicode 3.0 Bidi
algorithm
Most up-to-date Unicode 3.0 support
(including Normalization)
All APIs support UTF-16
Partnership insures balanced
viewpoints and practical solutions
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
ICU4J - ICU for Java







IBM developed extensive I18N library
I18N code added to Java JDK 1.1
Java code ported to C++ -> ICU
ICU available on alphaWorks
Both ICU and Java classes continue development
– Sometimes “leapfrogging” each other with
features
ICU open source, moves to developerWorks
2000 March: Java Code open source as “ICU4J”
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
ICU4J Features


Builds on Java 2 feature set
Feature summary:
– Advanced text boundary detection
– Calendars: Hebrew, Hijri/Islamic, Japanese
Gengou, Thai Buddhist
– Spelled-out numbers
– Normalization
– Transliteration
– Standard Unicode compression
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Demos


Locale Explorer
glibc
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Agenda





Panel Introductions
Library Descriptions and Demos
What is Open Source?
What is the Open Source experience?
Q and A
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
ICU OpenSource Objectives

De facto industry standard for Unicode
support

Pervasive globalization technologies

Mature globalization technologies for
customers

Support for other important OpenSource
products: Linux, Apache, Mozilla, XML etc.
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Open-Source Models

The Apache model
– Web access for CVS repository
– Technical committees

Developer community support
– [email protected] etc. mailing lists

Commercial product partnership
– RealNames, versant, GE ...
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Why contribute to Open Source?





Requires robust I18n and portability
Implementing alone, cost is
considerable
Sharing development is cost effective
Shared knowledge with experts
Ability to influence the end-result
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Why contribute to Open Source?






Provide portability and interoperability
Going to Unicode 3.0 is a sizable effort
Commercial libraries insufficient
Shared effort means our development
focus is now aligned with our needs
Share expertise, Give something
Source access-Education, Self-reliance
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Why contribute to Open Source?

Concerns:
– Giving away proprietary technology
– Design by committee
– Will release schedules fit product
schedules?
– Will library and product stay in synch?
– Do all participants have common
objectives?
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Why contribute to Open Source?

Concerns:
– Management Perceptions
“If it’s free, it must be for play…”
– Entry requirements and qualifications to be
able to affect direction or design
– Patch integration, Release control and
schedules
– Build stability
17th International Unicode Conference
San Jose, California, September 2000
Panel on Open-Source Approaches to Unicode Enablement
Agenda





Panel Introductions
Library Descriptions and Demos
What is Open Source?
What is the Open Source experience?
Q and A
17th International Unicode Conference
San Jose, California, September 2000