haskell程序设计语言
生活随笔
收集整理的這篇文章主要介紹了
haskell程序设计语言
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
根據[url=http://www.haskell.org/haskellwiki/Haskell]haskell[/url]的[url=http://www.haskell.org/haskellwiki/Introduction]官方定義[/url],haskell是polymorphically(多態) statically typed靜態類型), lazy(懶計算), purely functional language(純函數程序設計語言).而函數程序設計語言都是以[url=http://en.wikipedia.org/wiki/Lambda_calculus]lambda calculus[/url]為理論基礎的。事實上,現在越來越多的編程語言(如[url=http://www.python.org/]python[/url],[url=http://www.ruby-lang.org/en/]ruby[/url],[url=http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/]f#[/url]等)也加入了函數程序設計語言的特征。函數程序設計語言與其他的程序設計語言最大的不同在什么地方呢?函數程序設計語言最大的特點在于只需要告訴計算機做什么,然后即可得到結果。其他的程序設計語言則需要告訴計算機怎么做,然后才能得到結果。這也就是what to do 和how to do的區別。換句話說,函數程序設計語言編程需要更多的時間來考慮設計,如果設計考慮完善,那么代碼編寫應該是很容易直觀的。個人感覺不同的程序設計語言都有自己不同的適合領域,就像c語言適合于系統編程,haskell應該更適用于數學方面的應用(其理論基礎是lambda calcus,與圖靈機是完全等價的),比如計算機數學方面的教學或者解決一些數學問題。當然,haskell還能做到更多(跟其他很多編程語言如[url=http://www.perl.org/]perl[/url],[url=http://www.python.org]python[/url],[url=http://www.tcl.tk/]tcl[/url],[url=http://www.ruby-lang.org/en/]ruby[/url]一樣幾乎可以用來完成所需要的任何功能,但不一定是最適合的)從網絡到系統編程、圖像設計等等都完全可以實現,但我對haskell的了解還很膚淺,只能介紹一些基本的知識。
haskell語言的程序代碼非常緊湊,通常其代碼量僅僅是c/c++等語言的幾分之一,這能很好的減小項目管理上的負擔。比如我想找出從1到1000之間所有能被同時被3,5,7整除的數,那么一行代碼就解決了:
[x|x<-[1..1000],x `mod` 3 == 0, x `mod` 5 == 0, x `mod` 7 == 0]
如果對haskell感興趣,可以到[url=http://tryhaskell.org/]tryhaskell[/url]嘗試一些簡單的編程,直接在網頁中輸入代碼即可。
haskell相關書籍:
[url=http://learnyouahaskell.com/]learn you a haskell[/url]
[url=http://book.realworldhaskell.org/]real world haskell[/url]
實用手冊:
[url=http://cheatsheet.codeslower.com/]haskell cheatsheet[/url]
[url=http://www.haskell.org/onlinereport/]haskell 98 languages and librarys report[/url]
更多內容見[url=http://www.haskell.org/haskellwiki/Haskell]haskell wiki[/url]
haskell語言的程序代碼非常緊湊,通常其代碼量僅僅是c/c++等語言的幾分之一,這能很好的減小項目管理上的負擔。比如我想找出從1到1000之間所有能被同時被3,5,7整除的數,那么一行代碼就解決了:
[x|x<-[1..1000],x `mod` 3 == 0, x `mod` 5 == 0, x `mod` 7 == 0]
如果對haskell感興趣,可以到[url=http://tryhaskell.org/]tryhaskell[/url]嘗試一些簡單的編程,直接在網頁中輸入代碼即可。
haskell相關書籍:
[url=http://learnyouahaskell.com/]learn you a haskell[/url]
[url=http://book.realworldhaskell.org/]real world haskell[/url]
實用手冊:
[url=http://cheatsheet.codeslower.com/]haskell cheatsheet[/url]
[url=http://www.haskell.org/onlinereport/]haskell 98 languages and librarys report[/url]
更多內容見[url=http://www.haskell.org/haskellwiki/Haskell]haskell wiki[/url]
總結
以上是生活随笔為你收集整理的haskell程序设计语言的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓逆向代码反混淆 Simplify工具
- 下一篇: SimpleITK使用深度学习识别肺癌C