Intermediate

article

How to convert your code to be void-safe?

More and more code is becoming void-safe and today you want to turn an existing library into a completely void-safe one. If you start by setting the void-safety level to its highest setting, you might get discouraged quickly by the sheer number of errors.

article

ISO-8859 is dead, long live ISO-8859

The Trade-offs of Unicode

Whilst Unicode has given us the wonderful gift of complete coverage of just about every written language in a single application, it has not come without a price. That price is the greatly increased amount of memory required to store 32 bit characters.

article

Underused expanded types

Using expanded types for enumerations or aliased type names:


expanded class MY_ENUMERATION convert

value: {INTEGER_32}

feature

make (value_a: INTEGER_32)
 do
  value := value_a
 end

feature

value: INTEGER_32

end


It's as simple as that.

article

Output and by-reference parameters

This request is retracted, see http://www.eiffelroom.org/node/467 for a demonstration of an Object Oriented way of doing output and byref parameters.

I'm trying to lay out a case for adding parameter passing by value and/or output parameters.

article

Creating a .NET delegate object from an Eiffel routine

Someone recently asked me how to create a .NET delegate from an Eiffel routine. Ideally it would be nice to simply do:


my_delegate := (agent my_routine).to_delegate


where `to_delegate' is a query from the ROUTINE class. However this feature does not yet exist.

article

How to run eweasel in Eiffel Studio Testing Tool GUI

1. Make sure you have installed Eiffel Studio 6.4 or greater.

2. Check out Eiffel SVN trunk repository and Eweasel SVN repository (https://svn.eiffel.com/eiffelstudio/trunk/eweasel)

3.

article

C/C++ calls and callbacks

Most existing examples on how to do external calls contain a lot of English explanation which can distract people, like myself, who learn by example.

article

How to save a Jpg file with quality option

The result

First let's see the results of images in different quality levels.

article

Fun with Generics

Intro

We all know about generics as a wonderful help to implement container data structures like lists, sets, bags etc. Much later than Eiffel, object-oriented programming languages like Java and C# have understood that generic parameters are a powerful extension to the type system and remove the need for many casts. So, what else can we do with generics beyond containers?

article

Simple timer class

Sometimes in an application, some actions have to be repeatedly performed in a certain interval. This could for example be some cleanup of external data. To do this I wrote a small class that takes an agent and an interval.

indexing
	description: "Execute an action every interval until stopped."
	author: "Patrick Ruckstuhl <patrick@tario.org>"
	date: "$Date$"

Syndicate content