Editing 2453: Excel Lambda

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 3: Line 3:
 
| date      = April 21, 2021
 
| date      = April 21, 2021
 
| title    = Excel Lambda
 
| title    = Excel Lambda
| image    = excel_lambda_new.png
+
| image    = excel_lambda.png
 
| titletext = Extremely rude how Turing's later formulations of the halting problem called me out by name specifically.
 
| titletext = Extremely rude how Turing's later formulations of the halting problem called me out by name specifically.
 
}}
 
}}
  
 
==Explanation==
 
==Explanation==
[[Cueball]] is computing and [[Ponytail]] criticizes him in a way that is reminiscent of the [[:Category:Code Quality|Code Quality series]], although not as harsh. Cueball has lots of strange [[:Category:Cueball Computer Problems|computer problems]], and this will most likely result in another one.
+
{{incomplete|Created by a SPREADSHEET. What is a lambda function, what does it do, and has one just been added to excel? Can what Cueball suggest in reality be used like a Lambda function? A better link to lambda function on wikipedia is needed What is the meaning of Cueball's last statement? Another reference to a law/hypothesis about computing? Please mention here why this explanation isn't complete. Do NOT delete this tag too soon.}}
  
The comic begins with Ponytail finding out that {{w|Microsoft Excel}} is adding a {{w|Anonymous_function|lambda function}} to their function library. This was [https://techcommunity.microsoft.com/t5/excel-blog/announcing-lambda-turn-excel-formulas-into-custom-functions/ba-p/1925546 announced by Microsoft] for Beta users in December of 2020. A lambda function is a fundamental mathematical structure that can be used to define all possible computations, in what is known as {{w|lambda calculus}}. They are commonly found in programming languages such as {{w|Lisp}}, {{w|Python}}, and many others. A lambda function is also called an {{w|anonymous function}} because in most languages it can be passed to other functions (including another lambda function) without needing to be given any formal name.
+
[[Cueball]] is computing and [[Ponytail]] criticizes him in a way that is reminiscent of the [[:Category:Code Quality|Code Quality series]], although not so harsh. Cueball has had lots of [[Category:Cueball Computer Problems|Computer Problems]], and this will most likely result in another one.
  
Finding that Excel is adding a lambda function pleases Ponytail. Cueball claims that the lambda function is unnecessary, as when he needs arbitrary computation he just adds a block of columns to the side of his sheet and has a {{w|Turing machine}} process it. This would technically work as lambda calculus is formally equivalent to Turing machines. People have created [https://www.felienne.com/archives/2974 Turing machines in Excel], although not for practical purposes.
+
The comic begins with Ponytail finding out that Excel is adding a {{w|Anonymous_function|lambda function}} to their spreadsheet, which pleases her. Cueball claims that this is unnecessary, as when he needs arbitrary computation he just adds a block of columns to the side of his sheet and has a Turing machine process it, something that would technically work as a lambda function but would be really difficult to construct and maintain. Ponytail naturally finds this absurd.{{Citation needed}}
  
Ponytail finds his solution absurd and is convinced Cueball is "doing computing wrong". But he claims that all computing is equally wrong, citing the {{w|Church-Turing thesis}}, a hypothesis which says that a function can be computed by executing a series of instructions if and only if that function is computable by a Turing machine. A classical Turing machine uses an infinitely long strip of tape as its memory; for Cueball, the large Excel column acts as the "tape". All ways of computing are "equally wrong" since, according to this thesis, they can all be translated to or from a Turing machine.  
+
A classical {{w|Turing machine}} uses an infinitely long strip of tape as its memory. The large column acts as the "tape".
  
Ponytail and Cueball appear to have different ideas of 'computing'. Ponytail, like most programmers, probably includes efficiency and readability as important characteristics of 'doing computing right'. Cueball appears interested only in {{w|computability}}, a more theoretical point of view than Ponytail's.
+
Ponytail is convinced Cueball is "doing computing wrong". But he claims that all computing is equally wrong citing the {{w|Church-Turing_thesis|Church-Turing thesis}}, a hypothesis which says that a function can be computed by executing a series of instructions if and only if that function is computable by a Turing Machine. All ways of computing are therefor "equally wrong" since, according to this thesis, they can all be translated to a Turing Machine.
  
Ponytail then says that Turing would change his mind if he saw Cueball's spreadsheet, presumably because of the extreme complexity of Cueball's code in the spreadsheet. Cueball's final statement is that Turing could ask him to stop, but would not be able to prove if he actually will stop.  
+
Ponytail then says that Turing would change his mind if he saw Cueball's spreadsheet (almost as if she was saying he would turn in his grave). Cueball's final statement is that Turing could ask him to stop, but would not be able to prove if he actually will stop which is a reference to the {{w|Halting problem|halting problem}} mentioned in the title text.
  
Cueball's final statement is a reference to the {{w|halting problem}} mentioned in the title text. It is the problem of determining whether a given Turing machine will halt. The problem has been shown to be undecidable, i.e., it is impossible to build an algorithm that computes whether any arbitrary Turing machine will halt or not. Because of the way Cueball has behaved, he has been specifically mentioned in Turing's later formulations of the halting problem. Cueball finds this very rude. This is of course a joke, since Turing has been dead since 1954, presumably long before Cueball was born. But it would be crazy indeed if a scientist became so mad at a person that they would mention this person by name in their formulation of a serious problem.
+
In the title text the {{w|Halting problem|halting problem}} is mentioned. It is the problem of determining whether a given Turing Machine will halt. The problem has been shown to be undecidable, i.e., there exists no algorithm that computes whether an arbitrary Turing machine will halt or not. [[Randall]]/Cueball has been specifically mentioned in a later formulation of his halting problem, because of the way Randall has behaved. He finds this very rude. This is of course a joke, since Turing has been dead since 1954, long before Randall was born. But it would be crazy indeed, if a scientist became so mad at a person, that he would mention this person by name in his formulation of a serious problem.
  
Over-complicated spreadsheets were also mentioned in [[2180: Spreadsheets]].
+
 
 +
Over-complicated spreadsheets were also mentioned in [[2180: Spreadsheets|Spreadsheets]]
 +
 
 +
A Lambda function is a temporary function created inside another function, typically mapped to a letter such as x, that completes a repetitive task that is too unimportant to code another function for. They are commonly found in programming languages such as python.
 +
An example of a lambda function:
 +
def add(n1, n2):
 +
  addn = lambda x, y: x + y
 +
  return addn(n1, n2)
  
 
==Transcript==
 
==Transcript==
Line 41: Line 48:
  
 
==Trivia==
 
==Trivia==
*In the [https://www.explainxkcd.com/wiki/images/3/3b/excel_lambda.png original version] of the comic, in the final panel, there was a gray pencil outline, slightly different to Cueball's head that had not been removed.
+
*In the final panel we can see a pencil outline that is slightly different to his head that hasn't been rubbed out.
**This was later fixed in a re-upload.
 
 
 
 
{{comic discussion}}
 
{{comic discussion}}
  
Line 52: Line 57:
 
[[Category:Spreadsheets]]
 
[[Category:Spreadsheets]]
 
[[Category:Programming]]
 
[[Category:Programming]]
[[Category:Cueball Computer Problems]]
 

Please note that all contributions to explain xkcd may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see explain xkcd:Copyrights for details). Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel | Editing help (opens in new window)