Editing Talk:1312: Haskell

Jump to: navigation, search
Ambox notice.png Please sign your posts with ~~~~

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 6: Line 6:
  
 
:"Expression?" I don't know Haskel, but that's what I would call it in another functional language. --[[User:Rael|Rael]] ([[User talk:Rael|talk]]) 16:31, 3 January 2014 (UTC)
 
:"Expression?" I don't know Haskel, but that's what I would call it in another functional language. --[[User:Rael|Rael]] ([[User talk:Rael|talk]]) 16:31, 3 January 2014 (UTC)
::In my day, we only had methods. (Hint: I use Java) [[Special:Contributions/108.162.221.133|108.162.221.133]] 05:15, 4 March 2015 (UTC)
 
 
::That's a little imprecise, as it doesn't capture the idea of binding a value to a single symbol.  [[Special:Contributions/108.162.231.13|108.162.231.13]] 17:03, 3 January 2014 (UTC)
 
::That's a little imprecise, as it doesn't capture the idea of binding a value to a single symbol.  [[Special:Contributions/108.162.231.13|108.162.231.13]] 17:03, 3 January 2014 (UTC)
  
Line 23: Line 22:
 
               |otherwise = (fib (n - 1)) + (fib (n - 2)) --And the rest are the sum of the previous two.</nowiki>
 
               |otherwise = (fib (n - 1)) + (fib (n - 2)) --And the rest are the sum of the previous two.</nowiki>
 
:::--[[User:Someone Else 37|Someone Else 37]] ([[User talk:Someone Else 37|talk]]) 19:52, 3 January 2014 (UTC)
 
:::--[[User:Someone Else 37|Someone Else 37]] ([[User talk:Someone Else 37|talk]]) 19:52, 3 January 2014 (UTC)
 
::::And here's one which is closer to what an Haskeller would write (if he ever needed to compute Fibonacci numbers and couldn't bother using one of the good (non-linear) algorithms) :
 
<nowiki>fibs :: [Integer]
 
fibs = 0 : 1 : zipWith (+) fibs (tail fibs)</nowiki>
 
::::The first two numbers are 0, 1 and you get the rest by adding fibs and tail fibs (fibs offset by 1 element) (zipping them together with +).
 
::::The surprising part is that fibs is used in its own computation but that's no problem since each needed element can be computed by the time you need it (we "primed the pump" with the first two elements) and Haskell has lazy evaluation (sometimes named "call-by-need").
 
::::Note that this version only compute each element once, contrary to the previous one (which is horrendous since it does the whole inefficient (O(fib n)) Fibonacci computation for each element). 
 
::::--[[User:Jedaï|Jedaï]] ([[User talk:Jedaï|talk]]) 00:38, 26 January 2014 (UTC)
 
  
 
Does anyone have a clue what the Incomplete flag refers to? This seems like a pretty good explanation to me. --[[User:Mynotoar|Mynotoar]] ([[User talk:Mynotoar|talk]]) 11:22, 3 January 2014 (UTC)
 
Does anyone have a clue what the Incomplete flag refers to? This seems like a pretty good explanation to me. --[[User:Mynotoar|Mynotoar]] ([[User talk:Mynotoar|talk]]) 11:22, 3 January 2014 (UTC)
  
 
Example programs written in Haskell are: pandoc, universal markup converter; git-annex, tool to manage large files in git DVCS. --[[User:JakubNarebski|JakubNarebski]] ([[User talk:JakubNarebski|talk]]) 11:37, 3 January 2014 (UTC)
 
Example programs written in Haskell are: pandoc, universal markup converter; git-annex, tool to manage large files in git DVCS. --[[User:JakubNarebski|JakubNarebski]] ([[User talk:JakubNarebski|talk]]) 11:37, 3 January 2014 (UTC)
 
: You can add xmonad (tiling window manager) to the list, as well as darcs for a time (though git has thoroughly dominated this field by now...), you can also use Hakyll to generate your static blog (which presents some advantage in performance and safety), hoodle is a good free pen note taking program, hledger is a ledger handling program with several backends. The game Nikki and the robots is written in Haskell. --[[User:Jedaï|Jedaï]] ([[User talk:Jedaï|talk]]) 00:38, 26 January 2014 (UTC)
 
 
 
: I think the person [[User:Nealmcb|Nealmcb]] who updated the incomplete tag to say "'' Add examples of popular Haskell programs''" is boarderline trolling if not full on trolling -- Explanation looks pretty complete to me and I vote to remove the ''incomplete'' tag.  [[User:Spongebog|Spongebog]] ([[User talk:Spongebog|talk]]) 01:59, 4 January 2014 (UTC)
 
: I think the person [[User:Nealmcb|Nealmcb]] who updated the incomplete tag to say "'' Add examples of popular Haskell programs''" is boarderline trolling if not full on trolling -- Explanation looks pretty complete to me and I vote to remove the ''incomplete'' tag.  [[User:Spongebog|Spongebog]] ([[User talk:Spongebog|talk]]) 01:59, 4 January 2014 (UTC)
  
 
"thus Haskell may have value but no one has either invoked it to get that value or requested such a language." The point of the title text is (a joke that) programmers of Haskell are lazy, but no one tells them so. The point is not that no one uses Haskell. That is the point of the comic itself. {{unsigned ip|108.162.219.202}}
 
"thus Haskell may have value but no one has either invoked it to get that value or requested such a language." The point of the title text is (a joke that) programmers of Haskell are lazy, but no one tells them so. The point is not that no one uses Haskell. That is the point of the comic itself. {{unsigned ip|108.162.219.202}}
: It's a lot more likely to be a joke about Haskell's lazy evaluation. And why can't the point of the title text complement the point of the comic? [[Special:Contributions/103.22.201.145|103.22.201.145]] 13:01, 22 November 2014 (UTC)
 
  
 
...  I am confused by the description.  Is it possible that someone can put this into "plain language" that a non-programmer and a non-mathematician can understand?  (Go ahead and add "slow" to that description, too, if you so choose...) [[Special:Contributions/173.245.54.54|173.245.54.54]] 09:11, 5 January 2014 (UTC)
 
...  I am confused by the description.  Is it possible that someone can put this into "plain language" that a non-programmer and a non-mathematician can understand?  (Go ahead and add "slow" to that description, too, if you so choose...) [[Special:Contributions/173.245.54.54|173.245.54.54]] 09:11, 5 January 2014 (UTC)
: Functional programming languages are many -- explaining the difference to a non-programmer can be hard, but typically Lisp as the grandfather and related languages such a Scheme, Haskell [ {{w|List_of_programming_languages_by_category#Functional_languages|list here}} ] are considered {{w|functional programming}} languages, where Java, C, Basic, Fortan etc typically depending on changing state of variables and are called {{w|Procedural_programming|Procedural}} or {{w|Imperative programming}} programming languages -- The best advice for futher explanation is to read the wikipedia links. [[User:Spongebog|Spongebog]] ([[User talk:Spongebog|talk]]) 18:22, 5 January 2014 (UTC)
+
: Functional programming languages are many -- explaining the difference to a non-programmer can be hard, but typically Lisp as the grandfather and related languages such a Scheme, Haskell [ {{w|http://en.wikipedia.org/wiki/List_of_programming_languages_by_category#Functional_languages|list here}} ] are considered {{w|functional programming}} languages, where Java, C, Basic, Fortan etc typically depending on changing state of variables and are called {{w|Procedural_programming|Procedural}} or {{w|Imperative programming}} programming languages -- The best advice for futher explanation is to read the wikipedia links. [[User:Spongebog|Spongebog]] ([[User talk:Spongebog|talk]]) 18:22, 5 January 2014 (UTC)

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)

Templates used on this page: