Talk About Network



Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Eiffel > ISE 5.7 on Linu...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 4 Topic 866 of 909
Post > Topic >>

ISE 5.7 on Linux: Is that an implementation of Eiffel?

by Ulrich Windl <Ulrich.Windl@[EMAIL PROTECTED] > Jul 4, 2007 at 03:26 PM

Hi,

I'm programming Eiffel for about 15 years, now and then, and I put great
hopes
in the freely available ISE Eiffel, but trying to produce some freeware, I
found out:

ISE Eiffel 5.7 on Linux (openSUSE 10.2) is severely broken, because it
generates incorrect code (Really. Incremental compilation produced code
that
gets a SIGSEGV, while a full recompilation runs fine. Built-in BIT did not
work as expected, and a replacement class (override) also became instable
when
some unrelated code in another calss had been changed).

For example, the following code does not raise any assertion violation
when
being run with full assertion checks on:

-- A space- and time-efficient representation for a set of digits; BIT_9
-- had failed before.

expanded class
	DIGITS
		inherit ANY
			redefine
				out
			end
--...--

	set_digit(digit : INTEGER) is
			-- set `item' to `value'
		require
			valid_digit: digit >= 1 and digit <= 9
		do
			item := item | bit_value(digit)
		ensure
			digit_set: has_digit(digit)
		end -- set_item

--...--

end -- class DIGITS

However, when being used, the caller gets this assertion violation:

			solution.item(digit).set_digit(col + 1)
			check
				solution.item(digit).has_digit(col + 1)
			end

Also, as reported a long time ago, when being incrementally compiled, the
system receives a SIGSEGV at some un-guilty code. To make things worse,
the
code above worked until some completely unrelated code of a different
class
had been changed.

As a matter of fact, this makes the compiler completely unusable and moved
me
to consider Java (which I tried to avoid). How can a language designed for
correctness produce such buggy compilers? A proof of concept: It doesn't
work,
or what?

Regards,
Ulrich




 4 Posts in Topic:
ISE 5.7 on Linux: Is that an implementation of Eiffel?
Ulrich Windl <Ulrich.W  2007-07-04 15:26:35 
Re: ISE 5.7 on Linux: Is that an implementation of Eiffel?
Roger Browne <roger@[E  2007-07-05 23:00:51 
Re: ISE 5.7 on Linux: Is that an implementation of Eiffel?
llothar <llothar@[EMAI  2007-07-08 03:57:30 
Re: ISE 5.7 on Linux: Is that an implementation of Eiffel?
llothar <llothar@[EMAI  2007-07-09 04:56:12 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Sun May 11 17:41:34 CDT 2008.