Welcome!

Hello, Fuchsias, and welcome to Wikipedia! Thank you for your contributions. I hope you like the place and decide to stay. Here are some pages that you might find helpful:

I hope you enjoy editing here and being a Wikipedian! Please sign your name on talk pages using four tildes (~~~~); this will automatically produce your name and the date. If you need help, check out Wikipedia:Questions, ask me on my talk page, or place {{helpme}} on your talk page and someone will show up shortly to answer your questions. Again, welcome!  -- JHunterJ 23:52, 29 July 2006 (UTC)Reply

Eiffel

edit

Hello Fuchsias,

The study of the lambda calculus is a large enough field on its own as to make the link to Eiffel rather tenuous. If you do decide to leave a link, then quick references other languages in this regard would be welcome too, in order to maintain a neutral PoV.

Cheers, --Liyang 19:01, 31 July 2006 (UTC)Reply


You said:

The lambda calculus article has extensive sections on other languages on how to emulate lambda expressions

Please point out one or two such paragraphs. Lambda calculus mentions functional programming languages and cites Haskell, ML, Lisp as being the prominent ones. No examples in any of these languages.

You also said:

but nothing on Eiffel that has full-fledged support for the mechanism.

Eiffel's ‘mechanism’ for supporting closures / anonymous functions (or objects in Eiffel's case) is (in some cases not) as fully-fledged as that of Smalltalk, Ruby, Python, Perl, Scala, JavaScript or a dozen other general purpose not-primarily-functional programming languages; even C++ has support for this ‘mechanism’ via Boost. And let's not forget that Java has anonymous objects which can be used to achieve the same effect. If you mention one, you should at least mention the more widely-used ones from the rest too.

Having said this, the articles are mainly concerned with the lambda calculus formalism, as part of mathematical logic, theories of computation and type theory. Programming examples do not belong there, there are much more appropriate venues. Look: here's a section I found on Eiffel's agents.

Adding extra information to Wikipedia articles is generally appreciated, but please make sure it's being added to the correct page, under the right context.

Thank you, --Liyang 03:29, 1 August 2006 (UTC)Reply


You said:

But I still think it is important to mention that lambda-calculus mechanisms are not limited to Lisp and functional languages.

Please read carefully what I wrote above, in particular the penultimate paragraph.

You do not mean ‘lambda-calculus mechanisms’ (there is no such concept.) You mean anonymous function definitions, closures (related to continuations) and first-class functions (various hacks include Java's inner classes).

I acknowledge your expertise with Eiffel, but trust me, I am not at all unfamiliar with what I'm talking about either.

Thanks, --Liyang 04:16, 1 August 2006 (UTC)Reply


You said:

Did I imply that I didn't value your competence?

No, I was asserting that I'm familiar with the lambda calculus as well a range of programming languages: imperative, OO, functional and logical.

You said:

(Lambda calculus and programming languages) should be as good as the math part, in particular it should be well-balanced and not limited to pushing the functional language POV.

It's not pushing a functional PoV. The section was simply to point out that function languages are, to a large extent, extensions of the lambda calculus.

As an aside, let's have a look at what you've written:

Numerous imperative languages, e.g. Pascal, have long supported passing subprograms as arguments to other subprograms. In C and C++ the equivalent result is obtained by passing pointers to the code of functions (subprograms).

What you have described is certainly not equivalent. A function pointer/reference does not a closure make. Please fix this after you have read and understood the article on closures.

New mechanisms in imperative object-oriented languages have, however, started to provide the direct equivalent of lambda expressions of arbitrary order; this is the case "agents" in Eiffel and "delegates" in C#.

These mechanisms are not new. Unless you regard Smalltalk as new. Nor are such mechanisms directly equivalent. Saying that agent (x: REAL): REAL do Result := x * x end represents (λx. x*x) is firstly factually untrue: you're enforcing a particular evaluation order, namely passing the argument by value. Secondly there is no * operator in the lambda calculus.

What you are adding is – while appreciated – outside the scope of the article.

Wikipedia guidelines recommend that I simply change anything non-factual without discussion. I'm trying to do you a favour so you can fix the errors and place the information somewhere appropriate. I'm tired of this. If you still insist on tenuous additions which have more appropriate homes, please take this discussion to the talk page. –Liyang 19:03, 1 August 2006 (UTC)Reply

"Please read the design by contract papers"

edit

That was unnecessary. I agree, contracts affect inheritance and exceptions, not the other way around. I made a mistake. There's no need to be rude about it. --Doradus 17:49, 15 August 2006 (UTC)Reply

Sorry, rudeness was not intended, but you are right it appeared so. Please accept my apologies and treat this as a the equivalent of a verbal off-the-cuff comment, nothing more serious.
Thanks, I appreciate that. This is an unforgiving medium sometimes. --Doradus 21:15, 15 August 2006 (UTC)Reply

Eiffel "agents" and FP

edit

I'm not against mentioning Eiffel along with other "mostly non-FP" languages that allow FP constructs, in the Functional programming article. But I'm afraid I don't know enough Eiffel to understand what the thing about "agents" really means. Linking to the Eiffel article, I am treated to a completely empty section that is apparently stubbed about where such a discussion might occur. Since you seem to be familiar with Eiffel, would you write that section ASAP, so that readers can figure out what the connection is meant to be? LotLE×talk 03:11, 20 August 2006 (UTC)Reply

It looks like this was done just now -- the page is under construction.

Object-Oriented Software Construction

edit

I have added a "{{prod}}" template to the article Object-Oriented Software Construction, suggesting that it be deleted according to the proposed deletion process. All contributions are appreciated, but I don't believe it satisfies Wikipedia's criteria for inclusion, and I've explained why in the deletion notice (see also "What Wikipedia is not" and Wikipedia's deletion policy). Please either work to improve the article if the topic is worthy of inclusion in Wikipedia, or, if you disagree with the notice, discuss the issues at its talk page. Removing the deletion notice will prevent deletion through the proposed deletion process, but the article may still be sent to Articles for Deletion, where it may be deleted if consensus to delete is reached, or if it matches any of the speedy deletion criteria. --StalkerAT 10:03, 10 January 2007 (UTC)Reply

Fair use rationale for File:EiffelStudio-5.6-01.jpg

edit

Thanks for uploading or contributing to File:EiffelStudio-5.6-01.jpg. I notice the file page specifies that the file is being used under fair use but there is not a suitable explanation or rationale as to why each specific use in Wikipedia constitutes fair use. Please go to the file description page and edit it to include a fair use rationale.

If you have uploaded other fair use media, consider checking that you have specified the fair use rationale on those pages too. You can find a list of 'file' pages you have edited by clicking on the "my contributions" link (it is located at the very top of any Wikipedia page when you are logged in), and then selecting "File" from the dropdown box. Note that any non-free media lacking such an explanation will be deleted one week after they have been uploaded, as described on criteria for speedy deletion. If you have any questions please ask them at the Media copyright questions page. Thank you. J Milburn (talk) 13:58, 13 July 2009 (UTC)Reply

ArbCom elections are now open!

edit

Hi,
You appear to be eligible to vote in the current Arbitration Committee election. The Arbitration Committee is the panel of editors responsible for conducting the Wikipedia arbitration process. It has the authority to enact binding solutions for disputes between editors, primarily related to serious behavioural issues that the community has been unable to resolve. This includes the ability to impose site bans, topic bans, editing restrictions, and other measures needed to maintain our editing environment. The arbitration policy describes the Committee's roles and responsibilities in greater detail. If you wish to participate, you are welcome to review the candidates' statements and submit your choices on the voting page. For the Election committee, MediaWiki message delivery (talk) 16:08, 23 November 2015 (UTC)Reply

Nomination of Eiffel Software for deletion

edit
 

A discussion is taking place as to whether the article Eiffel Software is suitable for inclusion in Wikipedia according to Wikipedia's policies and guidelines or whether it should be deleted.

The article will be discussed at Wikipedia:Articles for deletion/Eiffel Software until a consensus is reached, and anyone is welcome to contribute to the discussion. The nomination will explain the policies and guidelines which are of concern. The discussion focuses on high-quality evidence and our policies and guidelines.

Users may edit the article during the discussion, including to improve the article to address concerns raised in the discussion. However, do not remove the article-for-deletion notice from the top of the article. Zackmann08 (Talk to me/What I been doing) 19:56, 8 November 2016 (UTC)Reply

Problems with upload of File:Betrand Meyer.jpg

edit

Thanks for uploading File:Betrand Meyer.jpg. You don't seem to have said where the image came from, who created it, or what the copyright status is. We require this information to verify that the image is legally usable on Wikipedia, and because most image licenses require giving credit to the image's creator.

To add this information, click on this link, then click the "Edit" tab at the top of the page and add the information to the image's description. If you need help, post your question on Wikipedia:Media copyright questions.

For more information on using images, see the following pages:

Thank you for your cooperation. --ImageTaggingBot (talk) 21:31, 20 December 2016 (UTC)Reply

ArbCom 2017 election voter message

edit

Hello, Fuchsias. Voting in the 2017 Arbitration Committee elections is now open until 23.59 on Sunday, 10 December. All users who registered an account before Saturday, 28 October 2017, made at least 150 mainspace edits before Wednesday, 1 November 2017 and are not currently blocked are eligible to vote. Users with alternate accounts may only vote once.

The Arbitration Committee is the panel of editors responsible for conducting the Wikipedia arbitration process. It has the authority to impose binding solutions to disputes between editors, primarily for serious conduct disputes the community has been unable to resolve. This includes the authority to impose site bans, topic bans, editing restrictions, and other measures needed to maintain our editing environment. The arbitration policy describes the Committee's roles and responsibilities in greater detail.

If you wish to participate in the 2017 election, please review the candidates and submit your choices on the voting page. MediaWiki message delivery (talk) 18:42, 3 December 2017 (UTC)Reply