Talk:Eiffel (programming language): Difference between revisions

Content deleted Content added
 
(7 intermediate revisions by 2 users not shown)
Line 1:
{{WikiProject Computingbanner shell|class=Start|importance1=mid}}
{{WikiProject Computer science|class=StartComputing|importance=mid}}
{{WikiProject Computer science|importance=mid}}
}}
 
[[/Expanded draft]]
Line 6 ⟶ 8:
== Archives ==
[[/Archive 1]]
 
== Bold and italic font conventions ==
 
I think we have, at this point, at least a rough consensus for bold and italic Eiffel font conventions to be used throughout the article (inline, and in codeblocks). Colour, whether restricted to codeblocks or not, seems to still be somewhat cntroversial, so let's leave that aside for now. Barring no further complaints in response to this I will, sometime in the next week or so, try and go through the article and apply bold/italic font conventions wherever appropriate. [[User:Leland McInnes|Leland McInnes]] 05:47, 20 September 2006 (UTC)
 
: i tried to re-order the poll and separate out a vote for code block, and for inline code.
: it seems to be a '''clear vote for eiffel standard with color in code blocks'''.
: for '''inline code''' i do not know how to interpret the vote. it seems quite '''even for all three options'''. if we take away the color then wikipedia style looses. --[[User:ThurnerRupert|ThurnerRupert]] 22:02, 24 September 2006 (UTC)
 
:: No, there's not. The way things work is that the editor with the most time (or sockpuppet friends) wins. If you don't like it, fork Wikipedia; it's Free. [[User:128.135.99.80|128.135.99.80]] 23:05, 1 November 2006 (UTC)
 
== Font conventions (again) ==
 
Another possible approach to handlign syntax conventions has become available. Wikipedia now supports GeSHi[http://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi], which provides automated syntax highlighting by use of <nowiki><syntaxhighlight></nowiki> tags. This would eliminate the need to include formatting markup in the text of the page itself (which can be a little cumbersome). A downside is that the current support for syntax highlighting of Eiffel (yes, it has Eiffel support already) doesn't perfectly conform to the current syntax presentation guidelines:
 
For example we would get the following
<syntaxhighlight lang="eiffel">
class
HELLO_WORLD
create
make
feature
make
do
io.put_string ("Hello, world!")
io.put_new_line
end
end
</syntaxhighlight>
 
However, if we were to convert the page to using GeSHi <nowiki><syntaxhighlight></nowiki> tags then we could move the convention issues over to fixing Eiffel syntax highlighting in GeSHi (there are, apparently, files for each language which can be changed) and not have to mess with markup on this page anymore -- it would all propogate automatically. Thoughts? -- [[User:Leland McInnes|Leland McInnes]] 20:11, 16 May 2007 (UTC)
 
:I like this proposal. GeSHi seems to use CSS so it's reasonable to think users could pick how they want to view the code. For instance, I could imagine little buttons on every source snippet that would switch between formatted and unformatted views. Regardless, with GeSHi support, I think these <nowiki><syntaxhighlight></nowiki> tags are likely to become the standard way to present code, so this article should probably conform for that reason. --[[User:Doradus|Doradus]] 03:07, 19 May 2007 (UTC)
 
::It is done. Certainyl it makes maintainability of code samples much easier. It also has the bonus of actually taggin code as Eiffel code specifically. Unfortunately it doesn't work fo inline code. -- [[User:Leland McInnes|Leland McInnes]] 06:39, 19 May 2007 (UTC)
 
:::Why wouldn't it work for inline code? --[[User:Doradus|Doradus]] 21:55, 26 June 2007 (UTC)
 
::::Because GeSHi automatically renders into blocks, so putting <nowiki><syntaxhighlight></nowiki> tags on inline code only results in it no longer being inline. -- [[User:Leland McInnes|Leland McInnes]] 02:42, 5 July 2007 (UTC)
 
Nice to see the article has recovered from its brief bout of blue-font insanity. I think the way it's done now, with a "style conventions" section, is just right. --[[User:Doradus|Doradus]] 21:54, 26 June 2007 (UTC)
 
: there was a clear vote on how it should like, and the inventors proposal was voted for. i'd suggest you change your stylesheet so it conforms to the original, or you change it back to without stylesheet and it looks again like the original. --[[User:83.215.194.249|83.215.194.249]] 00:13, 5 July 2007 (UTC)
 
:: I would be happy if the GeSHi Eiffel stylesheet could be cleaned up to conform. It's actually reasonably close already (compare, for example, to code on the open source EiffelStudio wiki [http://eiffelsoftware.origo.ethz.ch/Catcall_checkpoints][http://eiffelsoftware.origo.ethz.ch/Usage-site_variance]). That, however, is in the hands of whoever maintains GeSHi for Wikipedia -- I really would not know how to make the change as an ordinary user. Ultimately this is the best solution, it just has pending stylesheet changes to be dealt with. -- [[User:Leland McInnes|Leland McInnes]] 02:42, 5 July 2007 (UTC)
 
::: It seems to be at [[MediaWiki:Geshi.css]], so make whatever change you want. --[[User:Doradus|Doradus]] 11:57, 11 July 2007 (UTC)
:::: That is what I suggested to do 4 years later, although the format has an <code>inline</code> option <syntaxhighlight lang=eiffel inline>class HELLO_WORLD create make feature ...</syntaxhighlight> if that makes sense.
:::: I don't know if you already had noticed that. This discussion is so long that I forgot what other point I wanted to write about.
 
== No instructions, advice, or how-to ==
 
I removed Thumperward's "how-to" marker, as I do not see where it applies. Please provide a specific example or more detailed critizism. Thanks. --[[User:Schoelle|Schoelle]] ([[User talk:Schoelle|talk]]) 15:42, 20 December 2007 (UTC)
 
==When appeared?==
 
Infobox says 1986; text says "Since 1985, many suppliers have developed Eiffel programming environments". Any better sources? [[Special:Contributions/192.12.12.178|192.12.12.178]] ([[User talk:192.12.12.178|talk]]) 02:24, 2 March 2010 (UTC)
:{{done|Added a reference}} in the info block to the web page mentioning the history of the language. [[User:Alexander (Sasha)|Alexander (Sasha)]] ([[User talk:Alexander (Sasha)|talk]]) 09:06, 24 August 2017 (UTC)
 
==Introductory sentences are promotional, not NPOV==
The introductory paragraph reads like marketing copy.. Since efficient development, reliability, and extensibility are generally considered virtues, and object-oriented programming is widely seen as a road to these qualities, all this introduction says is that Eiffel is designed to be a ''good'' object-oriented language. The way the first paragraph reads now, it seems to say, "Eiffel is designed to get object oriented languages ''right'', which is demonstrated by its use in academia and in all of these different applications, and you even have a wide choice of tools to use!" It is only in the second paragraph that the article gets around to discussing the specific principles that distinguish Eiffel from other languages.
 
The introduction should describe what makes Eiffel objectively different, and anything that is said about how good it is needs to be backed up by citations to published and peer-reviewed studies that demonstrate using Eiffel leads to measurably better results than using some other specific choices that could be made. Only then are such statements NPOV. What we have here instead sounds like bandwagon marketing tactics don't cut it (ironic, since according to Tiobe Software's Programming Community Index, Eiffel is not even in the top ''50'' programming languages).
: popularity is not a way to judge the good quality of a language. Many OO languages are very bad designed. Eiffel, was designed with a more formally rigorous approach, I don't care if the majority of programmers ignore what a precondition is, preferring languages more easy to learn for the laymen, those with no types, and a lot of traps to fall.
 
: Eiffel has a good design because it gives no rope to programmer for hanging himself. And has features which were added just recently to those more popular OO languages, which I wont mention to avoid a religious discussion with their fans.
: I hate OO languages because they distorted many concepts. For example, encapsulation, in many OO languages the objects are parametrized changing internal constants. That violate the information hiding principle.
: Nevertheless, I am interested to learn about Eiffel, because contrary to many of the other OO counterparts, seems a well designed language, Because it is designed for good software engineering practices, like design by contract. It is not in the top list of popularity, but had positively influenced both other programming languages and the programming practice.
: It may sound publicity to you, but it is not. <!-- Template:Unsigned IP --><small class="autosigned">—&nbsp;Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[Special:Contributions/2806:106E:B:EB8A:5812:FFA3:1BF4:BDDD|2806:106E:B:EB8A:5812:FFA3:1BF4:BDDD]] ([[User talk:2806:106E:B:EB8A:5812:FFA3:1BF4:BDDD#top|talk]]) 03:34, 4 June 2021 (UTC)</small> <!--Autosigned by SineBot-->
 
Unless there are objections which need to be worked through, I will soon rewrite the first sentence to "Eiffel is an ISO-standardized, general-purpose object-oriented programming language," move the rest of the paragraph to the end of the section into a paragraph just above the contents, and continue the first paragraph with the second paragraph. --—C. V. Hyphus\<sup>[[User_talk:cvhyphus|talk]]</sup> 04:16, 25 April 2011 (UTC)
:{{done|Lead reworked}} --[[User:Cybercobra|<b style="color:#3773A5;">Cyber</b><span style="color:#FFB521;">cobra</span>]] [[User talk:Cybercobra|(talk)]] 05:28, 25 April 2011 (UTC)
 
== Missing File Extension ==
 
Can someone who knows Eiffel add the file extension used by its components. Thanks. <small class="autosigned">—&nbsp;Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[Special:Contributions/189.209.111.39|189.209.111.39]] ([[User talk:189.209.111.39|talk]]) 22:49, 7 May 2015 (UTC)</small><!-- Template:Unsigned IP --> <!--Autosigned by SineBot-->
:{{done|Added the file extension}} to the language template block. [[User:Alexander (Sasha)|Alexander (Sasha)]] ([[User talk:Alexander (Sasha)|talk]]) 08:48, 24 August 2017 (UTC)
 
== External links modified ==
Line 96 ⟶ 21:
 
Cheers.—[[User:InternetArchiveBot|'''<span style="color:darkgrey;font-family:monospace">InternetArchiveBot</span>''']] <span style="color:green;font-family:Rockwell">([[User talk:InternetArchiveBot|Report bug]])</span> 10:58, 18 September 2017 (UTC)
 
== Renaming mechanism flaw ==
 
Dear editors:
In 2022, it was discovered that the Eiffel's renaming mechanism has
serious semantic flaws, please refer to the following repo and pdf doc
for the report, and code example to demonstrate the semantic issue:
https://github.com/joortcom/eiffel_rename
https://github.com/joortcom/eiffel_rename/blob/main/eiffel_rename.pdf
Please verify the new findings as reported there, and update the
wikipedia page of the Eiffel language.
BTW, you can also check the following repo for a new design pattern
that solved the diamond problem of multiple inheritance cleanly and
generally, based on the above findings:
https://github.com/joortcom/DDIFI
Happy editing!
Regards. [[User:Joeyz44|Joeyz44]] ([[User talk:Joeyz44|talk]]) 15:53, 21 June 2025 (UTC)