Jump to content

Talk:Anonymous function

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Jarble (talk | contribs) at 15:10, 11 May 2014 (Linking to relevant external sources). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
WikiProject iconComputer science Start‑class
WikiProject iconThis article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
StartThis article has been rated as Start-class on Wikipedia's content assessment scale.
???This article has not yet received a rating on the project's importance scale.
Things you can help WikiProject Computer science with:

Template:Findsourcesnotice

Lambda in Java

Java 8 now supports lambdas, so it should be added to this page. — Preceding unsigned comment added by 12.111.88.66 (talk) 05:18, 18 August 2013 (UTC)[reply]

Typical usage summary?

The article might be more comprehensible if it introduced anonymous functions as *parameters* to named function. — Preceding unsigned comment added by 68.50.114.83 (talk) 22:11, 21 November 2011 (UTC)[reply]

Full vs. Some support?

I wasn't sure what the difference was between "Full" and "Some" support. Added Perl as having "Full" support, since it can do the five examples: sort, map, grep, curry, reduce ('reduce' is in List::Util). And, it has fully anonymous functions. Benizi (talk) 00:16, 20 February 2008 (UTC)[reply]

Expert tag and merge discussion

See Talk:First-class_function#Merge_anonymous_function_here. Pcap ping 21:40, 20 August 2009 (UTC)[reply]

Section 3.14 Python

Ha! Unexpected humor! Πthon is section 3.14.

Sorry, I can't help myself. Unimath (talk) 01:49, 25 December 2010 (UTC)[reply]

Ubiquitous in languages with first-class functions... such as Haskell?

This sentence in the introduction struck me as odd:

Anonymous functions are convenient to pass as an argument to a higher-order function and are ubiquitous in languages with first-class functions such as Haskell. [emphasis mine]

Why is Haskell used as an example of a language where anonymous functions are convenient–or better yet—why is there an example language at all? Anonymous functions aren't unique to Haskell are there are other more (historically) notable programming languages that use them. —BiT (talk) 02:20, 22 November 2011 (UTC)[reply]

PHP 5!

in newer versions of PHP it is possible to define anonymous functions: PHP-Manual: Anonymous Functions. so please update that paragraph. --Feudiable (talk) 20:51, 5 January 2012 (UTC)[reply]

Why not use the same example for all languages?

Ruby for instance has a completely different example, this makes comparing syntaxes dificuilt. — Preceding unsigned comment added by 116.193.144.2 (talk) 05:08, 8 March 2012 (UTC)[reply]

Someone put a merge tag on lambda (programming) back in Oct 2011. Discuss this proposal here.

Yes, merge. Actually, a redicrect may be enough, this page is clearly more complete. linas (talk) 22:15, 8 June 2012 (UTC)[reply]
Merge. Lambda just means "this is an anonymous function" anyway. There's really no reason to have anything besides a line on Lambda (disambiguation) that says that in programming it means anonymous function, and then link to that. Dtm1234 (talk) 21:29, 27 June 2012 (UTC)[reply]

Advantages?

The article does not tell me the advantages of this. For example, why is

def divide(x,y):
  return x/y
 
def divisor(d):
  return lambda x: divide(x,d)
 
half = divisor(2)
third = divisor(3)
 
print half(32), third(32)
16 10
 
print half(40), third(40)
20 13

any better than the (IMHO) much more obvious and shorter

def divide(x,y):
  return x/y
 
print divide(32,2), divide(32,3)
16 10
 
print divide(40,2), divide(40,3)
20 13

? Thanks in advance for enlighting me! :) --2003:63:2F67:9600:F9EA:4F10:2F98:DFFE (talk) 08:07, 19 March 2014 (UTC)[reply]

Because since you wrote both 40 and 32 two times, you are unnecessarily duplicating data that should be encapsulated. This is obviously not much of a concern in a toy example like that but it starts becoming more pressing when dealing with "complex" structures. Try and review some of your old code with your new knowledge and you'll probably find a lot of examples. — Preceding unsigned comment added by 2A02:1812:908:6100:2E44:FDFF:FE65:9549 (talk) 19:37, 14 April 2014 (UTC)[reply]

There are no advantages. As you have noticed, the "plain" form is much more obvious, shorter and, well, plain. As to the answer above, the duplication occurs in both examples and can be avoided by using simple variables. — Preceding unsigned comment added by 93.35.116.238 (talk) 11:33, 5 May 2014 (UTC)[reply]

Too python centric?

Why are all of the examples in the Uses section written in Python? Wouldn't this be better suited to a language that puts functions first such as Haskell? — Preceding unsigned comment added by 2A02:1812:908:6100:2E44:FDFF:FE65:9549 (talk) 19:26, 14 April 2014 (UTC)[reply]