• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
[ANN] Free OO language for Xcode
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ANN] Free OO language for Xcode


  • Subject: [ANN] Free OO language for Xcode
  • From: Ian Joyner <email@hidden>
  • Date: Thu, 19 Jan 2006 21:35:17 +1100

Eiffel for OS X Xcode has been updated to work with Xcode 2.0, 2.1, and 2.2. In support of Apple's free development tools, the Eiffel for Xcode licence is now FREE – try it out and build whatever you like. You can download it from:

http://www.maceiffel.com/

This version will not work with Xcode 1.5 or earlier (since frameworks compiled with GCC 4.0 will not interoperate with applications compiled with GCC 3.3). The Xcode 1.5 version is still available along with the CodeWarrior 8.3 version.

Eiffel for Xcode allows integration of Eiffel programs into Apple's programming environment with Eiffel libraries for Carbon and Cocoa, and also for Xcode developers to experience Eiffel.

About Eiffel
=========

Eiffel is a complete OO language supporting the following features:

* multiple inheritance (implementation, not just interface) done in an elegant way – break your common functionality into small utility classes to be inherited and used by others;

* comprehensive libraries for all common data structures and algorithms (with simple and consistent naming conventions);

* Cocoa and Carbon programming;

* garbage collection (integrated with Cocoa programming - no more reference counting woes!);

* design by contract (DbC) including preconditions, postconditions, class invariants, with integrated exception handling;

* trusted component initiative (Eiffel had this term first!) of building trustworthy libraries using DbC;

* genericity so there is no need of typecasting;

* constrained genericity (so that a class can invoke features on a generic type without typecast and potential runtime class cast exceptions);

* covariance so that types of features and arguments can be made more specific in subclasses;

* anchored types (where features can be typed 'same as' another feature or enclosing class, so that you only have to make a change in one type in a subclass to affect a whole lot of things);

* principles of OO programming as outlined in Bertrand Meyer's must- read OO classic "Object-oriented Software Construction";

* project lifecycle full support from design to implementation to testing to maintenance to enhancing without the typical departmental barriers in usual software development techniques, where programmers are involved go-to-wo in an integrated design and implementation approach (just like Apple projects!);

* industry best practice – not just what's flavor of the month or fashionable with Dogbert consultants and pointy-haired managers;

* elegant and readable syntax without clutter required in other languages (eg., no superfluous begins, less nested parentheses, or empty () to tell compiler this is a function or function call, no ** pointer dereferencing, no typecasts);

* style conventions were developed along with the syntax for readability and removing most of the need for obtrusive departmental 'programming and style guides';

* simplicity and elegant design with one good way of doing most things without the intersection of features of most languages where bugs arise because features were used together in ways unthought of before, general lack of 'gotchas' present in other languages – further removing most of the need for obtrusive departmental 'programming and style guides';

* uniform access (functions and variables are invoked the same way, and interchangeable, so programmers do not have to clutter classes with superfluous 'get' functions);

* speed, speed, speed – Eiffel generates native code, not virtual machine code, strong typing ensures most efficient code is produced, removing the need for many run-time checks, dispatch tables resolve directly, not by linear search as with untyped languages;

* Xcode features to generate best code for Macintosh;

* high-level debugging and tracing;

* cross-platform programming;

* easy external access to low-level routines in C and Objective-C.


For more information on Eiffel see:

http://www.maceiffel.com/Into Eiffel.pdf

For information on Cocoa programming in Eiffel see:

http://www.maceiffel.com/Cocoa.pdf

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Prev by Date: Re: Property list and XML ?
  • Next by Date: Re: source conversion
  • Previous by thread: re: Property list and XML ?
  • Next by thread: gcc4 & override operator new/delete
  • Index(es):
    • Date
    • Thread