ਹੈਸਕਲ (ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ)
ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ
ਹੈਸਕਲ (ਅੰਗਰੇਜ਼ੀ: Haskell) ਇੱਕ ਪ੍ਰਮਾਣਿਕ੍ਰਿਤ, ਆਮ-ਮਕਸਦ ਫੰਕਸ਼ਨਲ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੈ। ਇਸ ਦਾ ਨਾਮ ਹੈਸਕਲ ਕਰੀ ਨਾਮ ਦੇ ਦਾਰਸ਼ਨਿਕ ਤੋਂ ਰਖਿਆ ਗਿਆ ਹੈ। ਮਈ 2016 ਤੋਂ ਇੱਕ ਗਰੁੱਪ ਅਗਲੀ ਵਰਜਨ, Haskell 2020,ਉੱਪਰ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ।[26]
ਪੈਰਾਡਾਈਮ | functional, lazy/non-strict, modular |
---|---|
ਡਿਜ਼ਾਇਨ-ਕਰਤਾ | Lennart Augustsson, Dave Barton, Brian Boutel, Warren Burton, Joseph Fasel, Kevin Hammond, Ralf Hinze, Paul Hudak, John Hughes, Thomas Johnsson, Mark Jones, Simon Peyton Jones, John Launchbury, Erik Meijer, John Peterson, Alastair Reid, Colin Runciman, Philip Wadler |
ਸਾਹਮਣੇ ਆਈ | 1990[1] |
Haskell 2010[2] / ਜੁਲਾਈ 2010 | |
Haskell 2014 announced[3] | |
static, strong, inferred | |
ਆਪਰੇਟਿੰਗ ਸਿਸਟਮ | Cross-platform |
.hs , .lhs | |
ਵੈੱਬਸਾਈਟ | haskell |
ਕੋਡ ਮਿਸਾਲ
ਸੋਧੋਹੇਠ ਦਿੱਤਾ ਹੈਲੋ ਵਿਸ਼ਵ ਪ੍ਰੋਗਰਾਮ ਹੈਸਕਲ ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ:[because 1]
module Main where
main:: IO ()
main = putStrLn "Hello, World!"
ਫਿਬੋਨਾਚੀ ਨੰਬਰ ਦੀ ਇੱਕ ਕੁਸ਼ਲ ਤਾਮੀਲ ਇੱਕ ਅਨੰਤ ਸੂਚੀ ਦੇ ਤੌਰ ਤੇ ਹੇਠ ਦਿਤੀ ਗਈ ਹੈ:
-- Type annotation (optional)
fib:: Int -> Integer
-- With self-referencing data
fib n = fibs !! n
where fibs = 0: scanl (+) 1 fibs
-- 0,1,1,2,3,5,...
-- Same, coded directly
fib n = fibs !! n
where fibs = 0: 1: next fibs
next (a: t@(b:_)) = (a+b): next t
-- Similar idea, using zipWith
fib n = fibs !! n
where fibs = 0: 1: zipWith (+) fibs (tail fibs)
-- Using a generator function
fib n = fibs (0,1) !! n
where fibs (a,b) = a: fibs (b,a+b)
ਵੈਬ
ਸੋਧੋਹੈਸਕਲ ਵੈੱਬ ਫਰੇਮਵਰਕ ਮੌਜੂਦ ਹਨ,[27] ਇਹਨਾਂ ਵਿਚ ਸ਼ਾਮਲ ਹਨ:
- Yesod
- Happstack
- Snap[28]
ਟਿੱਪਣੀ
ਸੋਧੋ- ↑ 'Hello world' is meant as the introductory prototype of a read-eval-print_loop.
ਹਵਾਲੇ
ਸੋਧੋ- ↑ Hudak et al. 2007.
- ↑ ਫਰਮਾ:Cite mailing list
- ↑ ਫਰਮਾ:Cite mailing list
- ↑ 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10 4.11 4.12 Peyton Jones 2003, p. xi
- ↑ Norell, Ulf (2008). "Dependently Typed Programming in Agda" (PDF). Gothenburg: Chalmers University. Retrieved 9 February 2012.
- ↑ Hudak et al. 2007, p. 12-38,43.
- ↑ Stroustrup, Bjarne; Sutton, Andrew (2011). "Design of Concept Libraries for C++" (PDF). Archived from the original (PDF) on 10 ਫ਼ਰਵਰੀ 2012. Retrieved 29 ਮਈ 2016.
{{cite journal}}
: Cite journal requires|journal=
(help); Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) Archived 10 February 2012[Date mismatch] at the Wayback Machine. - ↑ 8.00 8.01 8.02 8.03 8.04 8.05 8.06 8.07 8.08 8.09 Hudak et al. 2007, pp. 12-45–46.
- ↑ 9.0 9.1 Meijer, Erik. "Confessions of a Used Programming Language Salesman: Getting the Masses Hooked on Haskell". OOPSLA 2007.
- ↑ Meijer, Erik (1 October 2009). "C9 Lectures: Dr. Erik Meijer – Functional Programming Fundamentals, Chapter 1 of 13". Channel 9. Microsoft. Archived from the original on 16 ਜੂਨ 2012. Retrieved 9 February 2012.
{{cite web}}
: Unknown parameter|dead-url=
ignored (|url-status=
suggested) (help) Archived 16 June 2012[Date mismatch] at the Wayback Machine. - ↑ Drobi, Sadek (4 March 2009). "Erik Meijer on LINQ". InfoQ. QCon SF 2008: C4Media Inc. Retrieved 9 February 2012.
{{cite news}}
: CS1 maint: location (link) - ↑ Hickey, Rich. "Clojure Bookshelf". Listmania!. Amazon.com. Retrieved 9 February 2012.
- ↑ Heller, Martin (18 October 2011). "Turn up your nose at Dart and smell the CoffeeScript". JavaWorld. InfoWorld. Archived from the original on 10 ਫ਼ਰਵਰੀ 2012. Retrieved 9 February 2012.
{{cite news}}
: Unknown parameter|dead-url=
ignored (|url-status=
suggested) (help) Archived 10 February 2012[Date mismatch] at the Wayback Machine. - ↑ "Declarative programming in Escher" (PDF). Retrieved 2015-10-07.
- ↑ Syme, Don; Granicz, Adam; Cisternino, Antonio (2007). Expert F#. Apress. p. 2.
F# also draws from Haskell particularly with regard to two advanced language features called sequence expressions and workflows.
- ↑ Wechsung, Ingo. "The Frege Programming Language" (PDF). Retrieved 26 February 2014.
- ↑ "Facebook Introduces 'Hack,' the Programming Language of the Future". WIRED. 20 March 2014.
- ↑ "Idris, a dependently typed language". Retrieved 2014-10-26.
- ↑ "LiveScript Inspiration". Retrieved 2014-02-04.
- ↑ "Glossary of Terms and Jargon". Perl Foundation Perl 6 Wiki. The Perl Foundation. Archived from the original on 21 ਜਨਵਰੀ 2012. Retrieved 9 February 2012.
{{cite web}}
: Unknown parameter|dead-url=
ignored (|url-status=
suggested) (help) Archived 21 January 2012[Date mismatch] at the Wayback Machine. - ↑ Kuchling, A. M. "Functional Programming HOWTO". Python v2.7.2 documentation. Python Software Foundation. Retrieved 9 February 2012.
- ↑ "The Rust Reference: Appendix: Influences". Retrieved 2016-02-03.
- ↑ Fogus, Michael (6 August 2010). "MartinOdersky take(5) toList". Send More Paramedics. Retrieved 9 February 2012.
- ↑ Lattner, Chris (2014-06-03). "Chris Lattner's Homepage". Chris Lattner. Retrieved 2014-06-03.
The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.
- ↑ "Timber/History". Archived from the original on 2020-10-31. Retrieved 2015-10-07.
- ↑ https://mail.haskell.org/pipermail/haskell-prime/2016-April/004050.html
- ↑ "Web/Frameworks".
- ↑ "Snap: A Haskell Web Framework: Home". Snapframework.com. Retrieved 2013-06-26.
ਹੋਰ ਪੜ੍ਹੋ
ਸੋਧੋ- ਰਿਪੋਰਟ
- Peyton Jones, Simon, ed. (2003). Haskell 98 Language and Libraries: The Revised Report. Cambridge University Press. ISBN 0521826144.
{{cite book}}
: Invalid|ref=harv
(help)Haskell 98 Language and Libraries: The Revised Report. Cambridge University Press. ISBN 0521826144. - Marlow, Simon, ed. (2010). Haskell 2010 Language Report (PDF). Haskell.org.
{{cite book}}
: Invalid|ref=harv
(help)Haskell 2010 Language Report (PDF). Haskell.org.
- ਕਿਤਾਬਾ
- Davie, Antony (1992). An Introduction to Functional Programming Systems Using Haskell. Cambridge University Press. ISBN 0-521-25830-8.ISBN 0-521-25830-8.
- Bird, Richard (1998). Introduction to Functional Programming using Haskell (2nd ed.). Prentice Hall Press. ISBN 0-13-484346-0.ISBN 0-13-484346-0.
- Hudak, Paul (2000). The Haskell School of Expression: Learning Functional Programming through Multimedia. New York: Cambridge University Press. ISBN 0521643384.ISBN 0521643384.
- Hutton, Graham (2007). Programming in Haskell. Cambridge University Press. ISBN 0521692695.ISBN 0521692695.
- O'Sullivan, Bryan; Stewart, Don; Goerzen, John (2008). Real World Haskell. Sebastopol: O'Reilly. ISBN 0-596-51498-0 (full text)
{{cite book}}
: External link in
(help)CS1 maint: postscript (link)|postscript=
- Thompson, Simon (2011). Haskell: The Craft of Functional Programming (3rd ed.). Addison-Wesley. ISBN 0201882957.ISBN 0201882957.
- Lipovača, Miran (April 2011). Learn You a Haskell for Great Good!. San Francisco: No Starch Press. ISBN 978-1-59327-283-8.ISBN 978-1-59327-283-8. (full text)
- Bird, Richard (2014). Thinking Functionally with Haskell. Cambridge University Press. ISBN 978-1-107-45264-0.ISBN 978-1-107-45264-0.
- ਟਿਊਟੋਰਿਅਲ
- Hudak, Paul; Peterson, John; Fasel, Joseph (June 2000). "A Gentle Introduction To Haskell, Version 98". Haskell.org.Haskell.org.
- Yet Another Haskell Tutorial, by Hal Daumé III; assumes far less prior knowledge than official tutorial
- Yorgey, Brent (12 March 2009). "The Typeclassopedia" (PDF). The Monad.Reader (13): 17–68
{{cite journal}}
: CS1 maint: postscript (link)Reader (13): 17–68
- ਇਤਿਹਾਸ
- Hudak, Paul; Hughes, John; Peyton Jones, Simon; Wadler, Philip (2007). "A History of Haskell: Being Lazy with Class" (PDF). Proceedings of the third ACM SIGPLAN conference on History of programming languages (HOPL III): 12-1–55. doi:10.1145/1238844.1238856. ISBN 978-1-59593-766-7.
{{cite journal}}
: Invalid|ref=harv
(help)"A History of Haskell: Being Lazy with Class" (PDF). Proceedings of the third ACM SIGPLAN conference on History of programming languages (HOPL III): 12–1–55. doi:10.1145/1238844.1238856. ISBN 978-1-59593-766-7. - Hamilton, Naomi (19 September 2008). "The A-Z of Programming Languages: Haskell". Computerworld."The A-Z of Programming Languages: Haskell". Computerworld.
External links
ਸੋਧੋ- ਅਧਿਕਾਰਿਤ ਵੈੱਬਸਾਈਟ
- ਹੈਸਕਲ ਵਿ ਕੀ
- Hackage – ਪੈਕੇਜ ਆਰਚੀਵ
- Hoogle – API ਖੋਜ ਇੰਜਣ
- ਟਿਊਟੋਰਿਅਲ
- Try Haskell! – in-browser interactive tutorial
- School of Haskell Archived 2015-12-25 at the Wayback Machine. – online tutorials
- ਫੁਟਕਲ
- The Monad.Reader – quarterly magazine on Haskell topics
- The Evolution of a Haskell Programmer – slightly humorous overview of different programming styles in Haskell