ਹੈਸਕਲ (ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ)
ਦਿੱਖ
ਹੈਸਕਲ (ਅੰਗਰੇਜ਼ੀ: Haskell) ਇੱਕ ਪ੍ਰਮਾਣਿਕ੍ਰਿਤ, ਆਮ-ਮਕਸਦ ਫੰਕਸ਼ਨਲ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੈ। ਇਸ ਦਾ ਨਾਮ ਹੈਸਕਲ ਕਰੀ ਨਾਮ ਦੇ ਦਾਰਸ਼ਨਿਕ ਤੋਂ ਰਖਿਆ ਗਿਆ ਹੈ। ਮਈ 2016 ਤੋਂ ਇੱਕ ਗਰੁੱਪ ਅਗਲੀ ਵਰਜਨ, Haskell 2020,ਉੱਪਰ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ।[26]
ਕੋਡ ਮਿਸਾਲ
[ਸੋਧੋ]ਹੇਠ ਦਿੱਤਾ ਹੈਲੋ ਵਿਸ਼ਵ ਪ੍ਰੋਗਰਾਮ ਹੈਸਕਲ ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ:[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. Archived from the original (PDF) on 24 ਦਸੰਬਰ 2012. Retrieved 29 ਮਈ 2016
{{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
ਸ਼੍ਰੇਣੀਆਂ:
- Pages using deprecated source tags
- CS1 errors: unsupported parameter
- CS1 errors: missing periodical
- Webarchive template warnings
- CS1 maint: location
- Articles with unsourced statements from February 2012
- CS1 errors: invalid parameter value
- CS1 errors: external links
- CS1 maint: postscript
- Articles with inconsistent citation formats