ਹੈਸਕਲ (ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ)

ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ

ਹੈਸਕਲ (ਅੰਗਰੇਜ਼ੀ: Haskell) ਇੱਕ ਪ੍ਰਮਾਣਿਕ੍ਰਿਤ, ਆਮ-ਮਕਸਦ ਫੰਕਸ਼ਨਲ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਹੈ। ਇਸ ਦਾ ਨਾਮ ਹੈਸਕਲ ਕਰੀ ਨਾਮ ਦੇ ਦਾਰਸ਼ਨਿਕ ਤੋਂ ਰਖਿਆ ਗਿਆ ਹੈ। ਮਈ 2016 ਤੋਂ ਇੱਕ ਗਰੁੱਪ ਅਗਲੀ ਵਰਜਨ, Haskell 2020,ਉੱਪਰ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ।[26]

ਹੈਸਕਲ
Logo of Haskell
ਪੈਰਾਡਾਈਮ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; 34 ਸਾਲ ਪਹਿਲਾਂ (1990)[1]
Haskell 2010[2] / ਜੁਲਾਈ 2010; 14 ਸਾਲ ਪਹਿਲਾਂ (2010-07)
Haskell 2014 announced[3]
static, strong, inferred
ਆਪਰੇਟਿੰਗ ਸਿਸਟਮCross-platform
.hs, .lhs
ਵੈੱਬਸਾਈਟhaskell.org

ਕੋਡ ਮਿਸਾਲ

ਸੋਧੋ

ਹੇਠ ਦਿੱਤਾ ਹੈਲੋ ਵਿਸ਼ਵ ਪ੍ਰੋਗਰਾਮ ਹੈਸਕਲ ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ:[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]

ਟਿੱਪਣੀ

ਸੋਧੋ
  1. 'Hello world' is meant as the introductory prototype of a read-eval-print_loop.

ਹਵਾਲੇ

ਸੋਧੋ
  1. Hudak et al. 2007.
  2. ਫਰਮਾ:Cite mailing list
  3. ਫਰਮਾ:Cite mailing list
  4. 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
  5. Norell, Ulf (2008). "Dependently Typed Programming in Agda" (PDF). Gothenburg: Chalmers University. Retrieved 9 February 2012.
  6. Hudak et al. 2007, p. 12-38,43.
  7. 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. 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. 9.0 9.1 Meijer, Erik. "Confessions of a Used Programming Language Salesman: Getting the Masses Hooked on Haskell". OOPSLA 2007.
  10. 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.
  11. 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)
  12. Hickey, Rich. "Clojure Bookshelf". Listmania!. Amazon.com. Retrieved 9 February 2012.
  13. 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.
  14. "Declarative programming in Escher" (PDF). Retrieved 2015-10-07.
  15. 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.
  16. Wechsung, Ingo. "The Frege Programming Language" (PDF). Retrieved 26 February 2014.
  17. "Facebook Introduces 'Hack,' the Programming Language of the Future". WIRED. 20 March 2014.
  18. "Idris, a dependently typed language". Retrieved 2014-10-26.
  19. "LiveScript Inspiration". Retrieved 2014-02-04.
  20. "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.
  21. Kuchling, A. M. "Functional Programming HOWTO". Python v2.7.2 documentation. Python Software Foundation. Retrieved 9 February 2012.
  22. "The Rust Reference: Appendix: Influences". Retrieved 2016-02-03.
  23. Fogus, Michael (6 August 2010). "MartinOdersky take(5) toList". Send More Paramedics. Retrieved 9 February 2012.
  24. 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.
  25. "Timber/History". Archived from the original on 2020-10-31. Retrieved 2015-10-07.
  26. https://mail.haskell.org/pipermail/haskell-prime/2016-April/004050.html
  27. "Web/Frameworks".
  28. "Snap: A Haskell Web Framework: Home". Snapframework.com. Retrieved 2013-06-26.

ਹੋਰ ਪੜ੍ਹੋ 

ਸੋਧੋ
ਰਿਪੋਰਟ
ਕਿਤਾਬਾ
ਟਿਊਟੋਰਿਅਲ
ਇਤਿਹਾਸ
ਸੋਧੋ
ਟਿਊਟੋਰਿਅਲ
ਫੁਟਕਲ