Haskell

正規表現の検索置換だけで長い行を短くする

英語のテキストを処理する際に、長い文字列の段落を処理しやすいように短い文字列に分割したいとします。 ピリオド+スペースをピリオドと改行にするとかだと、長い文字列と短い文字列がまざってしまうので、60文字とかで切りたい。 その際、できれば単語の途…

Ellieで入るElm入門

はじめに Elmが0.19から0.19.1になって、以下のリンク先のElmプログラムが全滅してしまいました。 moduleの命名法が間違っているって。なるほど。 作り直しますのでしばらくお待ち下さい。 Learn Elm 0.19 through ellie-app.com and problems 簡単な課題をE…

elm-uiから入るelm入門

ホームページelm-lang.orgにElmのチュートリアル(guide)があってそれはそれはすばらしいので、そこ以外で勉強するのはもったいないので、余計な入門は書かない方がいいのですが、思いついたのでしょうがない。 あとたぶんどんどん仕様が変わっているので他の…

Elmおもしろいね

elm-projects Elmという言語を知りました。 バージョンが0.19でまだまだ環境が整っていないのですが、やたらおもしろい。 発展するといいな。 elm-lang.orgというところにチュートリアルやドキュメントがあります。 おもにそれからのコピペが多いのですが、g…

4Clojure問題の翻訳と解答

Clojureに4Clojure Problemsという問題集のサイトがあって、とてもよくできているので翻訳してみました。 GitHub - kalz2q/4clojure-jp: translation of 4clojure problems in japanese Markdownで書いて、README.mdにはりつけてあります。 問題はさまざまだ…

プログラミング言語別コメント記法

コメントアウトするときのやり方が言語ごとに違うのでネットで探して一覧にしてみました。 ちゃんと表示できるかな。 C++ => // or /* */ swift => // or /* */ JavaScript => // or /* */ CSS => /* */ HTML => Bash => # R => # Haskell => -- or {- -} E…

Haskellのランダムについて

Hakellは関数型言語で参照透過性とかを保証するために、同じことをやったら同じ結果が出ることが保証されているために、randomについてはちょっとというか相当ややこしい。 いまの私の理解は以下のようなものですが、これで合ってるか。 import System.Rando…

Haskellの関数の定義を読む方法

Haskellは基本的にはタイプ、型、をghci上で:tまたは:typeで調べて、それで理解していくのがいちばん速い勉強方法だと思います。型でわからない場合、ソースを読んでもわからないことが多い気がする。 まあ、ともかく、とりあえず例えばrandomという関数のソ…

Haskellでワンライナー

半年前から突然Haskellに夢中になっています。 で、表題のワンライナーですが、Haskellではたぶんワンライナーは書けないと思います。 そもそもスクリプト言語でないし、インタプリタ言語でもない。 ですが、慣れてくるとちょっとした仕事をするにも頭が関数…