タグ

forthとhaskellに関するjjzakのブックマーク (4)

  • 還暦プログラマの挑戦(Haskell に挑む)

    Harrorth - Learning Haskell, Forth and Parrot - Together. 2008年6月中旬 無謀にも、Pugsの初期バージョンを読もうと意気込んだけれど、早々に無理だと断念。 インターネットをさまよい歩くも、Parsec関連は、イントロだけやって「すばらしい」で終わりが多い。部分的に字句解析に使う例も多いが、言語を作る例がほとんどない。・・・こまった。 とっ、「ysano」さんのブログに「Haskell: Forthインタプリタの実装」があって、とびついた。 でっ、出処のHarrorthにたどり着いたわけだ。 「nothingmuch」さんは、Pugsプロジェクトの方らしい。 そして、この(Harrorth)プロジェクトがスタートしたのは、「Haskellの理論を学ぶフラストレーション」が元になっているらしい。 彼

  • The Theory of Concatenative Combinators

    Brent Kerby (bkerby at byu dot net). Completed June 19, 2002. Updated February 5, 2007. Introduction A Few Combinators: swap, dup, zap, unit, cat, cons, i, dip Lambdas An Abstraction Algorithm The sip Combinator Schemes of Combinators: dign, buryn Another Combinator Scheme: flipn Two More Schemes: dipn, sipn Applicative Combinators: w, k, b, c, s Towards a Minimal Base: {cons, sip, k} A Smaller Ba

    jjzak
    jjzak 2007/08/23
    Concatenativeのコンビネーター
  • Accept Things

    長い間ブログを更新できてなくてすみませんでした。 これまでずっと何年もかかって、自分にとっての適度な複雑さ(壁を乗り越える喜び)を持った問題を探し求めてました。Linux Kernel解読、Ruby開発、Emacsコードリーディング、などなど微々たるものですが色々かじってきました。どれも得るものは大きかったのですが、自分の中でどれも何かしっくりこない感じでした。 それで、これは!と思えるものがやっと見つかりました。 Drizzleです。 実は少し前からDrizzleの開発に参加しています。"mysql"を"drizzle"にひたすら置換するといった地味な作業をちょくちょくやってました。(今の自分にできることはこれくらいなので...) http://jpipes.com/index.php?/archives/272-Drizzle-Cirrus-Milestone-Moving-Forwa

    Accept Things
  • Harroth

    Pugsの勉強をしようと考えている方は、以下のリソースを読むと面白いかもしれません。 Harrothチュートリアル ソースコード Harrothチュートリアルでは、Forthというプログラミング言語のパーサをHaskellで実装しながら、パーサについての理解が深められるように書かれています。しかし残念な点が2点あります。第一に、説明で出てくるコードと実際のソースコードに若干の違いがあり、読者の理解を妨げていることです。*1第二に、パーサの核になる部分のコードが欠落していることです。よく書けているチュートリアルなだけに、当に残念でした。 あと少しのピースがあれば、完成しそうだったので、代わりにそのピースを作ってみました。何回も試行錯誤してパーサが完成した時は、当に感動しました。 そのパーサのコードは以下の通りです。 % vim MyForth.hs {- MyForth - An Imp

    Harroth
  • 1