Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Eiffel and Unicode?

17 views
Skip to first unread message

Obnoxious User

unread,
Sep 24, 2008, 12:02:46 PM9/24/08
to
Hi,

Does Eiffel have intrinsic support for Unicode, or
is it only achievable with third-party libraries?

--
OU
Remember 18th of June 2008, Democracy died that afternoon.
http://frapedia.se/wiki/Information_in_English

Helmut

unread,
Sep 24, 2008, 8:09:11 PM9/24/08
to

What do you mean by "intrinsic support"? In the Eiffel language all is
based on libraries. Even the basic types like INTEGER, CHARACTER etc.
are part of a library. You can regard the kernel library with the
basic types as "intrinsic". Since the kernel library does not contain
classes which support unicode, there is no intrinsic support.

However as far as I know, the gobo library (a high quality Eiffel
library) does support unicode. Look at http://www.gobosoft.com for
details.

The Eiffel Compiler "tecomp" (http://tecomp.sourceforge.net) does not
yet have unicode functions integrated into its delivered library. But
since today unicode is considered basic, it will have unicode support
in the future.

Regards
Helmut

The Eiffel Compiler/Interpreter: http://tecomp.sourceforge.net
Download: http://www.sourceforge.net/projects/tecomp

Georg Bauhaus

unread,
Sep 25, 2008, 4:37:29 AM9/25/08
to
Obnoxious User schrieb:

> Hi,
>
> Does Eiffel have intrinsic support for Unicode, or
> is it only achievable with third-party libraries?
>

In standard Eiffel, we get

" 8.30.4 Semantics: Character types

The reference class CHARACTER_GENERAL describes properties
of characters independently of the character code.

The expanded class CHARACTER_32 describes Unicode characters;
the expanded class CHARACTER_8 describes 8-bit (ASCII-like)
characters.

The expanded class CHARACTER describes characters with a
length and encoding settable through a compilation option.
The recommended default is Unicode."

CHARACTER_GENERAL is not widely supported yet.

If you load one of the CHARACTER... classes in your IDE,
you can see what the Eiffel system has to say about the
respective classes. The implementations tend to be external
built ins, the library class files are just stubs, and you
can get an idea of how Unicode is supported by looking at
the *indexing* section at the head of a class definition.

Example from a CHARACTER_32:

feature -- Access

code: INTEGER is
-- Associated integer value
external
"built_in"
end

natural_32_code: NATURAL_32 is
-- Associated integer value
external
"built_in"
end

Or, if you have time, look at the source of the compilers,
as they are available for everyone to see.

--
Georg Bauhaus
Y A Time Drain http://www.9toX.de

Obnoxious User

unread,
Sep 25, 2008, 2:26:43 PM9/25/08
to
On Thu, 25 Sep 2008 10:37:29 +0200, Georg Bauhaus wrote:

> Obnoxious User schrieb:
>> Hi,
>>
>> Does Eiffel have intrinsic support for Unicode, or is it only
>> achievable with third-party libraries?
>>
>>
> In standard Eiffel, we get
>
> " 8.30.4 Semantics: Character types
>
> The reference class CHARACTER_GENERAL describes properties of
> characters independently of the character code.
>
> The expanded class CHARACTER_32 describes Unicode characters; the
> expanded class CHARACTER_8 describes 8-bit (ASCII-like) characters.
>
> The expanded class CHARACTER describes characters with a length and
> encoding settable through a compilation option. The recommended
> default is Unicode."

I forgot about the Eiffel standard. The above seems positive though.

>
> CHARACTER_GENERAL is not widely supported yet.

Of course not.

>
> If you load one of the CHARACTER... classes in your IDE, you can see
> what the Eiffel system has to say about the respective classes. The
> implementations tend to be external built ins, the library class files
> are just stubs, and you can get an idea of how Unicode is supported by
> looking at the *indexing* section at the head of a class definition.
>
> Example from a CHARACTER_32:
>
> feature -- Access
>
> code: INTEGER is
> -- Associated integer value
> external
> "built_in"
> end
>
> natural_32_code: NATURAL_32 is
> -- Associated integer value
> external
> "built_in"
> end
>
> Or, if you have time, look at the source of the compilers, as they are
> available for everyone to see.

I have no interest in the source of the compilers. I'm
just looking for a C++ alternative with much stronger native Unicode
support; at least until C++0x is final and implemented. And
I have always had an itch for Eiffel. It's perhaps time to try it.

Obnoxious User

unread,
Sep 25, 2008, 2:27:00 PM9/25/08
to
On Wed, 24 Sep 2008 17:09:11 -0700, Helmut wrote:

> On Sep 24, 11:02 am, Obnoxious User <O...@127.0.0.1> wrote:
>> Hi,
>>
>> Does Eiffel have intrinsic support for Unicode, or is it only
>> achievable with third-party libraries?
>>
>> --
>> OU
>> Remember 18th of June 2008, Democracy died that
>> afternoon.http://frapedia.se/wiki/Information_in_English
>
> What do you mean by "intrinsic support"? In the Eiffel language all is
> based on libraries. Even the basic types like INTEGER, CHARACTER etc.
> are part of a library. You can regard the kernel library with the basic
> types as "intrinsic". Since the kernel library does not contain classes
> which support unicode, there is no intrinsic support.

Intrinsic in the sense that the basic character and string classes, with
corresponding io classes, are Unicode aware, and delivers this as
transparently as possible to the programmer. Like Scheme R6.

>
> However as far as I know, the gobo library (a high quality Eiffel
> library) does support unicode. Look at http://www.gobosoft.com for
> details.

I'll check it out.

> The Eiffel Compiler "tecomp" (http://tecomp.sourceforge.net) does not
> yet have unicode functions integrated into its delivered library. But
> since today unicode is considered basic, it will have unicode support in
> the future.

That's the problem with many languages and compilers. Unicode perhaps
tomorrow, but certainly not today.

0 new messages