scheme-intepretor-0

scheme intepretor href https :// wikibooks org wiki Scheme ボクシング href https :// wikibooks org wiki Scheme ></ なかっ href https :// wikibooks org wiki Scheme ></ いきなり わから とりあえず わから ところ まとめ oneOf こいつ こいつ という parse 組み合わせ repl エラー なかっ として 恐らく blockquote oneOf 一文字 blockquote parse 組み合わせる Either (?)。</ わから parse こいつ いきなり しゃしゃり出 しかも oneOf Wiki リンク liftM はじめ blockquote モナド に対して 持ち上げる blockquote href https :// qiita com shi items 4408 76624067 933 liftm ></ なるほど とりあえず 。</ href https :// wikibooks org wiki Scheme Scheme ></ href https :// qiita com elipmoc 101 items fedc 068523477 1617 haskell parsec ></ href https :// sirocco hatenadiary org entry 20110226 1298752244 liftM モナド )</ ></ href https :// qiita com shi items 4408 76624067 933 liftm Haskell モナド ></

scheme-intepretor

ここをみて 書きたいと思ったから書いた。

初めの一歩

ボクシングではない。

初めの一歩

ここで理解できなかったことは特にないと思う。

構文解析

構文解析

ここからいきなり長くなってわけわからんくなった。

けど混乱していても時間が勝手に立つだけなのでとりあえずわからないところをまとめてみることにする。

oneOf

こいつはこいつ単体で動作しない何かという認識。実際parse関数と組み合わせて利用している。

replで実行してみたが、エラーを吐いた。

実証はできなかったが、理解としては恐らくここの通りで

oneOfは引数で与えられた文字列中のどれか一文字を認識します

parseと組み合わせることで、認識して、Either型で返してるんだと思う(?)。

自分でも何言ってるのかよくわからない。

parse

こいつも謎だ。何いきなりしゃしゃり出てきてるのだ。

しかもoneOfもだけどWiki内のリンク割と死んでる。ググったけど。

liftM

はじめ見たとき???ってなったのでググった。

モナドに入っている値に対して、関数を持ち上げることで適用します。

ここから抜粋

なるほど。

とりあえず今日はここまで。

参考

48時間でSchemeを書こう

haskell parsec個人メモ

liftMを学ぶ(モナドに関数を適用する)

Haskell モナド変換子 超入門

comment:

Tweet

Home