精华内容
下载资源
问答
  • haskell

    2010-03-16 15:48:08
    下载地址 入门指南   Haskell 是一种通用的纯函数编程语言。这个页面将帮助你尽快迈入 Haskell 的大门。 [编辑] 第一步:为什么要学习 Haskell? John Hughes 写了一篇很好的论文:Why Functional ...

    http://www.haskell.org/ghc/下载地址

    入门指南

     

    Haskell 是一种通用的纯函数编程语言。这个页面将帮助你尽快迈入 Haskell 的大门。

    第一步:为什么要学习 Haskell?

    John Hughes 写了一篇很好的论文:Why Functional Programming Matters

    第二步:安装 Haskell

    Haskell 和其它大多数语言一样,有两种执行方式:批量执行的编译方式,和交互执行的解释方式。在交互式环境下,你可以直接在命令行输入你想要计算的表达式,这是一种做实验的好方法。

     

    GHC 支持编译和解释方式(GHCi) 可能是特性最全的环境
    Hugs 仅支持解释方式 不过相比 GHC 要轻巧得多

    GHC 和 Hugs 都在 Windows 上运行。Hugs 是 windows 平台上最好的解释器。如果你想在 Mac OSX 上安装的话,请参看 这里 (flw 注:GHC 和 Hugs 在 Debian 下都有相应的包,其它 Linux 平台下想必也有。支持 RPM 的系统可以从 www.rpmfind.net 上找找看。当然也可以从官方网站上下载源码包编译安装。)

    第三步:你的第一个 Haskell 程序

    请注意,下面这个例子不能在 Hugs 下运行(截止到 20050308 为止),因为 Hugs 不支持在命令行定义函数。你必须把定义放到一个源代码文件里。


    如果你学过其它编程语言的话,那你一定编过“Hello world”程序。不过在 Haskell 中,你的第一个程序不是“Hello world”,而是一个阶乘函数。

    启动解释器

    打开一个终端。如果你安装了 GHC 的话,就请输入 ghci(GHC 解释器的名字)。如果你安装的是 Hugs 的话,就请输入 hugs。

    $ ghci
       ___         ___ _
      / _ \ /\  /\/ __(_)
     / /_\// /_/ / /  | |      GHC Interactive, version 6.4, for Haskell 98.
    / /_\\/ __  / /___| |      http://www.haskell.org/ghc/
    \____/\/ /_/\____/|_|      Type :? for help.
    
    Loading package base-1.0 ... linking ... done.
    Prelude>
    

    写第一个程序

    在 GHCi 中,我们既可以从一个源代码文件中装载程序,也可以直接在命令提示符下定义。试试下面的这个:

    Prelude> let fac n = if n == 0 then 1 else n * fac (n-1)
    

    这样就定义了一个叫做 fac 的函数,它可以计算一个整数的阶乘(第四步中我们再来仔细讨论它)

    运行它

    输入 fac 12,这样可以把 12 作为参数传递给 fac 函数。

    *Main> fac 12
    479001600
    

    大功告成!你现在已经成功地运行了你的第一个 Haskell 程序。

    但我还是想要打印 "Hello World"!

    在进入长篇大论之前,先来看看 Haskell 版本的 “Hello World”:

    putStrLn "Hello World"
    

    在 GHCi 中输入上面的文字,然后你就可以得到你想要的效果。

    如果你想用一个可执行文件来打印这句话的话,你可以把下面这段文字保存到 hello.hs 文件中:

    module Main where
    
    main = putStrLn "Hello World"
    

    编译器要求必须得有一个叫做 main 的函数,这样它便知道程序该从何处开始执行。用命令 ghc hello.hs -o hello 来编译它,然后运行就可以了。Unix/Linux 下用 ./hello 来运行,windows 下用 hello.exe 来运行。

    长话短说

    函数式编程有一个显著的特点就是所有的工作都用“函数”来完成。函数是没有副作用(flw 注:side effects,也译作“边际效应”)的。它们返回一个和参数相关的值。为了进行输入输出(比如往屏幕上打印一句话),你可以想象成函数可以拥有一个名为“world”的参数,这个参数包括了所有的外部状态,然后函数返回一个修改过了的 world(比如屏幕上多了“Hello World”这几个字),而这个修改过了的 world 又可以带到随后的函数中。

    Haskell 提供一些类似的东西,而且更加省事:它把函数和现实世界的相互影响,称作 IO 行为。这样当一个函数把一个数字转换成可打印字符串时,它变具有类型 Int -> String。而一个从终端上读取指定长度的字符串的函数也许会具有类型 Int -> IO String,它的意思是说,给函数一个整数,它可以返回一个“从终端上读取一个字符串”的 IO 行为。这也就是为什么 main 函数具有类型 IO 的原因——你通常希望你的程序能够和现实世界交互,那样的话就它就得是一个 IO 行为。

    说起来有些拗口。但其实和其它的编程语言没有什么分别,只不过其它的语言把它们叫做“语句”和“表达式”罢了。这样的好处是 Haskell 有一个坚实的框架来处理这些事,它的名字就叫“IO Monad”。

    如果你想要一个关于如何在 Haskell 中进行 IO 工作的快速介绍的话,我建议你看看 IO 介绍

    第四步:接下来该干什么?

    有很多不错的 Haskell 教程和书籍,下面这些都是我们推荐的:

    教程

    1. Yet Another Haskell Tutorial (English 简体中文)
    2. Haskell-Tutorial (English)
    3. A Gentle Introduction to Haskell (English)
    4. Haskell Kurs (德语)

    课程

    1. Programming in Haskell (English)
    2. Functional programming (English, Español, Netherlands) (注意:它里面讲的是老版本的 Haskell。比如输入输出后来都改过)

     

     

    展开全文
  • haskell-static-alpine haskell-static-alpine is an Alpine-based Docker image that contains GHC and cabal, for building static Haskell executables. Why do I need this? Normally, Haskell binaries are ...
  • 本书使用直接的,没有废话的方法,因此您不再需要花费额外的时间阅读文档,博客文章和论坛以了解如何使用Haskell - 所有这些知识都在一个连贯的资源中提供。 首先,您将了解如何在Haskell中完成Web开发的多个方面,...

    图书说明:

    了解如何提高Haskell的技能水平,并将此语言用于实际的Web开发。本书使用直接的,没有废话的方法,因此您不再需要花费额外的时间阅读文档,博客文章和论坛以了解如何使用Haskell - 所有这些知识都在一个连贯的资源中提供。

    首先,您将了解如何在Haskell中完成Web开发的多个方面,例如路由,构建HTML,与数据库,缓存和队列等进行交互。然后,您将继续使用值得注意的库,例如“scotty” “for routings”,“digestive-functor”用于输入验证,“postgresql-simple”用于与数据库交互。

    在后面的章节中,您将了解如何通过在Heroku上部署的功能齐全的项目来共同使用所有这些库。

    你将学到什么

    建立一个高效的Haskell开发环境
    查看构建Web应用程序时遇到的基本任务。
    探索如何与外部系统交互,例如数据库,队列和RESTful API。
    构建RESTful API,网站,构建视图和表单验证。
    本书适用于谁

    软件开发人员熟悉Haskell,并希望将这些知识应用于Haskell的新实际应用程序和软件开发人员。
     云盘下载

    下载地址:Practical Web Development with Haskell

    更多免积分电子书,请访问:IE布克斯网

    展开全文
  • Haskell 初探

    2019-05-12 06:21:43
    JavaScript 的特性虽支持函数式编程,但语言核心并没有函数式的东西,实践起来总感觉照猫画虎,只得招式不得心法。因此决定学习一门纯函数式的编程语言,一番调研后决定学习 ...下载 Binary Packages,解压,执...

    JavaScript 的特性虽支持函数式编程,但语言核心并没有函数式的东西,实践起来总感觉照猫画虎,只得招式不得心法。因此决定学习一门纯函数式的编程语言,一番调研后决定学习 Haskell。

    一、安装

    Haskell 的官方网站是 www.haskell.org,官方提供了多种安装方式,但一番尝试后发现直接安装 Haskell 编译器 GHC 最方便。下载 Binary Packages,解压,执行 ./configure && make install,就安装上了。

    安装成功后主要用到如下命令:

    • ghc <code.hs>:编译代码;
    • runghc <code.hs>:直接运行源码;
    • ghci:交互式命令行。

    二、Hello World

    试玩后最直观的感觉是 Haskell 的函数和传统语言有很大差异,Haskell 的函数体是有值的表达式,不像其他语言充满业务逻辑,调用上也有不同。例如对一个数组的元素乘3然后取前2个,写法如下:

    三、入门文档

    入门文档主要是官方的 Learn Haskell in 10 minutes,概要的介绍了 Haskell 语言的情况,比如表达式、类型、函数等。

    四、详细文档

    详细文档是官方的 WikiBooks,介绍了语言细节,我也正在研读中。

    转载于:https://juejin.im/post/5cd7b4a0f265da036023cedc

    展开全文
  • :这是默认的语言服务器,它将自动下载,因此不需要手动安装。 它通过提供额外的插件和功能在ghcide上构建。 :一种快速可靠的LSP服务器,支持。 :一种旧式语言服务器,您可能不应该使用此服务器。 Haskell ...
  • Haskell培训:101和102。 该存储库包含Google的Haskell培训中使用的幻灯片和练习的源代码。...请参阅以下载生成的PDF和代码实验室。 警告 该代码按原样显示,没有演讲者的注释。 这不是官方支持的Google产品。
  • Haskell开始

    2016-04-20 10:30:00
    一、安装 操作系统为centos,为了安装最新的Haskell...使用wget下载ghc,命令如下(注意系统是centos6.7) $ wget http://downloads.haskell.org/~ghc/7.10.3/ghc-7.10.3-x86_64-centos67-linux.tar.bz2 ...

    一、安装

    操作系统为centos,为了安装最新的Haskell编译器,不使用命令

    yum install ghc

    1.安装ghc

    使用wget下载ghc,命令如下(注意系统是centos6.7)

    $ wget http://downloads.haskell.org/~ghc/7.10.3/ghc-7.10.3-x86_64-centos67-linux.tar.bz2

    如果需要移动安装包位置,比如将安装包移动到用户home目录下的bin目录中

    $ mv ghc-7.10.3-x86_64-centos67-linux.tar.bz2 ./bin

    进入bin目录

    cd ./bin

    解压缩包

    tar -xjf ghc-7.10.3-x86_64-centos67-linux.tar.bz2

    进入解压后的目录并执行

    $ cd ghc-7.10.3
    $ ./configure

    如果出现错误

    checking for path to top of build tree... utils/ghc-pwd/dist/build/tmp/ghc-pwd: error while loading shared libraries: libgmp.so.3: cannot open shared object file: No such file or directory
    configure: error: cannot determine current directory

     说明需要安装库libgmp.so.3,可以执行如下命令进行下载包

    $ wget ftp://rpmfind.net/linux/centos/6.7/os/x86_64/Packages/gmp-4.3.1-7.el6_2.2.i686.rpm

    进入到下载目录并执行

    rpm -ivh gmp-4.3.1-7.el6_2.2.x86_64.rpm

    就可以安装到/usr/lib64目录下,执行如下命令进行查看结果

    $ cd /usr/lib64
    $ ls | grep libgmp

    然后切换到ghc包目录并执行

    $ ./configure
    $ make
    $ make install

     二、源码阅读

    1. 阅读Haskell Report

    2. 使用hoogle

    转载于:https://www.cnblogs.com/sjjsxl/p/5406575.html

    展开全文
  • Haskell 2

    2016-10-19 20:32:58
    当希望分母为0时,可以增加测试数据的约束条件,比如: prop_x a b = (a /= 0 && ... 首先确保下载的是Haskell-Platform (full) 1. 在代码中 import Test.QuickCheck 2. GHCi 载入代码之后,执行 quickCheck prop_x
  • 欢迎使用HyperHaskell, ……强烈宣传的Haskell口译员。 HyperHaskell是编程语言的图形解释器。 您使用工作表输入表达式并求值。... HyperHaskell旨在易于安装。... 安装它的最简单方法是下载二进制发行版。 下一
  • Travel With Haskell 1 — ...中的 Downlaods中下载Haskell PlatForm,下载完成后一路安装即可。 安装成功后,环境就配置好了。 可以打开cmd,输入stack查看是否存在此命令,如果存在,即说明正确配置,环境变量...
  • 十分钟学会 Haskell

    万次阅读 多人点赞 2018-05-21 17:41:09
    1 概要Haskell 是函数式(一切通过函数调用来完成)、静态、隐式类型(类型...最流行(common)的 Haskell 编译器是 GHC,下载地址。GHC 在 GNU/Linux, FreeBSD, MacOS, Windows 以及 Solaris 平台上都有可供...
  • haskell笔记1

    2016-10-19 14:27:00
    haskell platform下载:https://www.haskell.org/platform/ 进入haskell控制台,终端输入 $ ghci 编译文件 :l file.hs 数组操作 >> length [2,3] 长度 >> head [2,3] 首值 >> ...
  • 1.搭建环境 去haskell 官网,下载haskell for windows的最新版本并安装,
  • Haskell第一天

    千次阅读 2016-09-13 21:07:00
    Win 去haskell platform下载相应版本 linux 通过:* Redhat `$ sudo yum install haskell-platform` * Debian `$ sudo apt-get install haskell-platform`介绍Haskell 是一门纯粹函数式程序语言 (purely functiona
  • haskellHaskell开发的某些时候,您可能会达到稳定状态。 人们可能会在很多阶段发生这种情况,包括从一开始就如此。 您已习惯了该语言的某些模式,很难知道下一步该怎么做。 这是我们关于如何突破这些... 下载我们...
  • Haskell cookbook 2017; Haskell Design Patterns;Haskell High Performance Programming;Haskell Programming From First Principles full; 倾心收集的资料, 祝大家下载愉快;
  • Beginning Haskell; Haskell Data Analysis Cookbook; Haskell Financial Data Modeling and Predictive Analytics; Learning Haskell Data Analysis; Practical Statistics for ... 倾心收集资料, 祝愿大家开心下载;
  • Learn You a Haskell for Great Good! 2013-10; Programming in Haskell 2nd Edition; Real World Haskell; The Craft of Functional Programming 3rd Edition Oct 2011;... 倾心收集资料, 祝愿下载后更高兴;
  • Haskell Platform安装过程

    万次阅读 2012-10-04 12:27:01
    Haskell 是一种纯函数式编程语言。 Haskell Platform 是Haskell的一个整合的开发环境。 本文主要介绍Haskell Platform的安装过程。...1 下载Haskell Platform和GHC http://www.haskell.org/
  • 怎样安装haskell

    千次阅读 2015-09-22 14:23:01
    OS:Centos66 由于haskel在epel中默认已经支持,所以只需要...1 下载epel,安装epel wget http://centos.ustc.edu.cn/epel/epel-release-latest-6.noarch.rpm yum install epel*.rpm 2 安装haskell yum insta
  • 刚接触Haskell, 在网上狂找教程. 后来无果.. 最后来发现我电脑里面既然有这个pdf ... PS:啥时候进去的都不知道 共享出来 详见附件...
  • Parallel and Concurrent Programming in Haskell; Practical Concurrent Haskell; Practical.Foundations.for.Programming.Languages.2ed.2.03; 倾心收集的资料, 祝大家愉快下载;
  • Mac上的Haskell入门

    千次阅读 2018-02-08 18:22:46
    编译器用ghci,可以在haskell.org上下载下载完成后完成安装,编译器就完成。2.下载社区版IDEA,完成后下载Haskell插件(https://plugins.jetbrains.com/plugin/8258-intellij-haskell),后打开IDEA,打开Install ...
  • 迪加斯特拉谈 Haskell

    2014-09-04 13:58:30
    2001 年,出生于荷兰的计算机...这封信的 PDF 版可以从这里下载。不幸的 是,学校最终还是用 Java 课程替换了 Haskell。相关联的,麻省理工的计算机程序结构和分 析课程(6.01)中的 Scheme 语言也被 Python 语言替换掉。
  • Haskell 笔记(一)环境安装 Haskell Haskell是一种纯函数式编程语言(purely ...下载选择Haskell Platform, 包含了Haskell编译器(GHC)和一系列有用的Haskell库。 进入交互模式 终端输入ghci,可以看到欢迎信息...
  • Haskell复习笔记(一)

    2018-09-17 21:59:00
    Haskell笔记这是第三次总结,前两次都因为各种原因丢失了,对于Haskell我算不上什么大神,只不过在大学时为了学习算法时选择了...编译器来这里下载https://www.haskell.org/downloads 什么是HaskellHaskell是一...
  • Haskell Roll out

    2012-11-24 00:32:00
    下载。 修改default prompt,可以用:set prompt指令,一般设置成”ghci>” 加载模块:module或者:m 加载代码:load或者:l :set +t命令,在ghci中可以在显示表达式值之后显示表达式的类型,当不需要显示表达式类型时...
  • Emacs默认是不带haskell-mode的,所以写.hs文件时不会自动高亮和缩进,需要自己...1 下载haskell-mode https://github.com/haskell/haskell-mode 2 解压文件haskell-haskell-mode-2_8_0-140-g77d0373.tar....
  • Haskell 相关资料, 参考资料; 如 Pure script, 函数式前端语言, Lambda-Calculus and Combinators, 之类; 倾心收集, 轻松下载;

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 188
精华内容 75
关键字:

haskell下载