Read the book right now on mybinder.org with this link: (Usually takes a minute to launch)
This is a Jupyter notebook adaptation of the book Learn You a Haskell for Great Good! by Miran Lipovača.
I learned Haskell from this book in 2014 by following along in GHCI, as the book suggested.
In 2019, the Jupyter notebook format would be a nice way read this book. This is one of the best cases for Theodore Gray's idea of the computational essay, and Andrew Gibiansky has made it possible with IHaskell.
Each chapter of the book is one .ipynb
Jupyter notebook file. See the list of chapter files on the left sidebar in JupyterLab.
Each notebook cell depends on cells that come before it, so run the notebooks from top to bottom. I have refactored code to make the examples work in Jupyter, and removed instructions for how to use GHCI. Other than that I have tried to be faithful to the original text.
Miran Lipovača wrote this book and released it to the world under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License, which means that the book is free-as-in-speech, and allows us to enjoy the book in notebook format. But that does not mean that the book is free-as-in-beer; it means that you, dear reader, pay for the book under the honor system. If you are honorable and you want to keep living in a world in which honorable artists license their art as Creative Commons, then buy the book.
Thanks also to Paul Vorbach for https://github.com/pvorb/learn-you-a-haskell.
Visual Studio Code has aNotebook UIwhich you can use to run Jupyter kernels instead of the browser-basedJupyterLab or classic Jupyter UI.
Clone this repository with git
and cd
into the cloned directory
git clone https://github.com/jamesdbrock/learn-you-a-haskell-notebook.git
cd learn-you-a-haskell-notebook
code .
There is a DockerVisual Studio Code devcontainerconfiguration in the .devcontainer
directory.
When you open Visual Studio Code by running code .
, a pop-up dialog willtell you that “Folder contains a Dev Container configuration file. Reopen folderto develop in a container.” Click the button labelled Reopen in Container.
You will then be able to open the .ipynb
chapter files in the notebook
directory.
The VS Code Notebook UI isstill a bit rough,here are some problems I’ve noticed:
Clone this repository with git
and cd
into the cloned directory
git clone https://github.com/jamesdbrock/learn-you-a-haskell-notebook.git
cd learn-you-a-haskell-notebook
then run this docker
command in a shell
docker run --rm -p 8888:8888 -v $PWD/notebook:/home/jovyan/work --name learn-you-a-haskell ghcr.io/jamesdbrock/ihaskell-notebook:master jupyter lab --LabApp.token=''
then open http://localhost:8888 to read the book.
For podman
, try
podman run --privileged --userns=keep-id --rm -p 8888:8888 -v $PWD/notebook:/home/jovyan/work --name learn-you-a-haskell ghcr.io/jamesdbrock/ihaskell-notebook:master jupyter lab --LabApp.token=''
If you make an improvement to a notebook .ipynb
file and you want to save the file and commit the changes and make a pull request to the repository,
Maximize the browser window to full screen width, because cell horizontal scroll bar visibility gets saved in the notebook.
Run -> Restart kernel and Run All Cells...
Save the notebook.
For more information about the IHaskell Docker image, see https://github.com/jamesdbrock/ihaskell-notebook
gitter 卸载 by Gitter 通过吉特 最佳Gitter频道:Haskell (Best Gitter channels on: Haskell) Haskell is a standardized, general-purpose, purely functional programming language. It uses non-strict semantics and stro
介绍 (Introduction) Jupyter Notebook offers a command shell for interactive computing as a web application. The tool can be used with several languages, including Python, Julia, R, Haskell, and Ruby. It
介绍 (Introduction) Jupyter Notebook offers a command shell for interactive computing as a web application so that you can share and communicate with code. The tool can be used with several languages, i
介绍 (Introduction) Jupyter Notebook is an open-source web application that lets you create and share interactive code, visualizations, and more. This tool can be used with several programming languages
you-get 是一个跨平台命令行视频、音频与图像下载工具,支持国内外常用的各种多媒体网站。 $ you-get 'https://www.youtube.com/watch?v=jNQXAC9IVRw'site: YouTubetitle: Me at the zoostream: - itag: 43
Read You 是一个以 Material You 风格呈现的 Android RSS 阅读器。 特性 订阅 RSS 链接 导入 / 导出 OPML 文件 文章更新通知 沉浸阅读(文章内容去干扰优化) 全文解析 支持多账户 集成 Read You 也集成了一些第三方服务 API,支持您使用已有的云端账户来作为数据源。 Fever Google Reader FreshRSS Miniflux T
are-you-es5 A package to help you find out which of your node_modules aren't written in ES5 so you can add them to your Webpack/Rollup/Parcel transpilation steps. This is currently limited to checking
Haskell是一种纯函数式编程语言,它的命名源自美国数学家Haskell Brooks Curry,他在数学逻辑方面上的工作使得函数式编程语言有了广泛的基础。Haskell语言是1990年在编程语言Miranda的基础上标准化的,并且以λ演算为基础发展而来。这也是为什么Haskell语言以希腊字母“λ”(Lambda)作为自己的标志。Haskell语言的最重要的两个应用是Glasgow Hask
Learn more about the Flutter framework from the following pages: Flutter basics Introduction to widgets Building layouts in Flutter tutorial Add interactivity tutorial Apply your existing knowledge Fl
Learn more about the Flutter framework from the following pages: Flutter basics Introduction to widgets Building layouts in Flutter tutorial Add interactivity tutorial Apply your existing knowledge Fl