Difference between revisions of "Component standards"

Line 1: Line 1:
   This article should list project members and means to contact them. Please add this information and then remove this note.
+
   To adhere to the standards for the [[:Category:Projects|Projects category]], this project page should include a '''project members''' section listing contributors and means to contact them. Please add this information and then remove this note.
 
[[Category:User suggestions]]
 
[[Category:User suggestions]]
 
'''Standards and Tools for Eiffel-based Components'''
 
'''Standards and Tools for Eiffel-based Components'''

Revision as of 12:47, 8 August 2007

 To adhere to the standards for the Projects category, this project page should include a project members section listing contributors and means to contact them. Please add this information and then remove this note.

Standards and Tools for Eiffel-based Components

While Eiffel appears to be an ideal language for building libraries, it has not caught on. Today, the most common way of distributing Eiffel libraries is as source code, for Eiffel compilers.

At the same time, other languages heavily leverage the distribution of binary components. This is true for both open source and proprietary software.

I'd like to see some emphasis placed on standards and tools to make it easier to distribute binary components written in Eiffel. Among the problems that need to be addressed are issues of data interchange, what to do with MI, exception handling, and multithreading.

One possible starting place: for binary Eiffel library, designate for the compiler an "export" cluster. This cluster contains the root classes for the library. Constraints may be placed on these classes to ease integration with other languages. For example, members of the cluster may not be implemented with MI. The public interface for the classes may only reference other classes within the cluster, or primitive data types.