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

Can eiffel be used for bare metal development?

153 views
Skip to first unread message

droid...@gmail.com

unread,
Mar 11, 2014, 12:14:35 PM3/11/14
to
I'm wondering can Eiffel programming language be really use for bare metal development (for developing code that runs without operating system, or for actually developing an operating system from ground up in Eiffel)? From the first sight it seems to be a hard task. Eiffel compiles to C, and then C can be compiled to bare bones code, but what about Eiffel's runtime? Is the runtime written in C or in Eiffel itself? Is there a subset of Eiffel that can compile and run without runtime at all? What parts of runtime will I need to reimplement and how much different parts of the runtime depend on each other? Is there any osdeving projects that use Eiffel or does anyone try to do osdeving with Eiffel?
Message has been deleted

Larry Rix

unread,
Jan 4, 2015, 7:04:17 PM1/4/15
to
On Tuesday, March 11, 2014 12:14:35 PM UTC-4, droid...@gmail.com wrote:
> I'm wondering can Eiffel programming language be really use for bare metal development (for developing code that runs without operating system, or for actually developing an operating system from ground up in Eiffel)? From the first sight it seems to be a hard task. Eiffel compiles to C, and then C can be compiled to bare bones code, but what about Eiffel's runtime? Is the runtime written in C or in Eiffel itself? Is there a subset of Eiffel that can compile and run without runtime at all? What parts of runtime will I need to reimplement and how much different parts of the runtime depend on each other? Is there any osdeving projects that use Eiffel or does anyone try to do osdeving with Eiffel?

Apparently it can as Manu Stapf accomplished for HP so they could use Eiffel for printer drivers.

droid...@gmail.com

unread,
Jan 28, 2015, 6:11:38 PM1/28/15
to
> Apparently it can as Manu Stapf accomplished for HP so they could use Eiffel for printer drivers.
This is very interesting. Could you post some links, or explain how this can be achived. Does it require hacking the compiler?

Larry Rix

unread,
Jan 29, 2015, 7:41:28 AM1/29/15
to
On Wednesday, January 28, 2015 at 6:11:38 PM UTC-5, droid...@gmail.com wrote:
> > Apparently it can as Manu Stapf accomplished for HP so they could use Eiffel for printer drivers.
> This is very interesting. Could you post some links, or explain how this can be achived. Does it require hacking the compiler?

I don't have any other info, but you can ask Manu as he personally did or was closely associated with the work. His explanation of it to me was quite some time ago. All I remember is that it took some rewriting of the libraries and compiler output to match the target hardware. Beyond that, I have no specific knowledge.

Hope this helps somehow! :)

ma...@eiffel.com

unread,
Feb 19, 2015, 12:26:23 PM2/19/15
to
On Tuesday, March 11, 2014 at 5:14:35 PM UTC+1, droid...@gmail.com wrote:
> I'm wondering can Eiffel programming language be really use for bare metal development (for developing code that runs without operating system, or for actually developing an operating system from ground up in Eiffel)? From the first sight it seems to be a hard task. Eiffel compiles to C, and then C can be compiled to bare bones code, but what about Eiffel's runtime? Is the runtime written in C or in Eiffel itself? Is there a subset of Eiffel that can compile and run without runtime at all? What parts of runtime will I need to reimplement and how much different parts of the runtime depend on each other? Is there any osdeving projects that use Eiffel or does anyone try to do osdeving with Eiffel?

Currently we still rely on an OS and a C runtime library. Our runtime can be tuned to remove certain features such as object serialization, deep object equality, file manipulations, no GC, ...

Our past experience shows that we need about 256KB of ROM/RAM to run a version of Eiffel that is quite close to the desktop version. I think it is possible to go lower but this requires some more fine tuning.

Regards,
Manu

roderick...@googlemail.com

unread,
Mar 26, 2015, 10:23:53 AM3/26/15
to
Have you considered SPARK 2014? It has contracts, freely available
tools and compilers, and was very much designed for bare-metal
embedded systems. Oh...and the contract verification can be static,
dynamic, or some mixture of both... See www.spark-2014.org
- Rod Chapman
0 new messages