masquerade0324のブックマーク (5)

  • OCaml: どうやってファンクタをコンパイルしているのか - type t (* void *)

    小ネタ。OCamlの複雑な機能の中にファンクタというものがあります。 これをどういうふうにコンパイルしているのか見てみましょう。 結論からいうと、 OCamlのモジュールというのはただのレコードである。 ファンクタはレコードを受け取ってレコードを返すまさに関数である です。 コード例 実際のファンクタを使ったコードを見て、これがどういうふうに中間コードで表現されるのか見てみましょう。 module type S = sig type t val f : t -> t end module Make (M: S) = struct let h1 = (M.f, M.f) let h2 = (M.f, M.f) end module M1 = struct type t = int let f x = x end module M2 = Make(M1) このコードは、ファンクタMakeをつく

    OCaml: どうやってファンクタをコンパイルしているのか - type t (* void *)
    masquerade0324
    masquerade0324 2015/06/07
    型付けによる区別か。
  • あずにゃんとは何だったのか。 - 純粋関数空間

    「あずにゃん Advent Calendar」ってなんやねん! 登録したのはいいものの、いったい何を書いたものかと迷っているうちに、クリスマスになってしまった。 困った。そもそも「あずにゃん Advent Calendar」とは何なのか。何なのか。 改めて考えると実に奇妙な企画だ。難解極まる。 今の私にはどう記事を書いていいものか難しすぎる。 うんうんと悩み唸ること一週間近く。 だが待てよ。 もしかすると、これがすなわちあずにゃんが如何に魅力的であるのかということを、 ある種自己言及的に示唆ているのではないか。 そんな風に昨日あたりから思い始めたのだった。 そういう訳で、それを少しまとめて書いてみようと思う。 Advent Calendarができるということは、どういうことなのか? すなわち25の記事が書かれるということである(あずにゃん Advent Calendarは記事が埋まっていな

    あずにゃんとは何だったのか。 - 純粋関数空間
  • Real World OCaml が出ました - camlspotter’s blog

    一昨年から少しずつ書かれていた OCaml プログラミングの、 Real World OCaml (以下 RWO)がついに public beta になり公開されました。 ( https://realworldocaml.org/beta1/en/html/ ) 版元の O'Reilly ではこのベータ版の状態の e-book が 今なら安く手に入ります。完全版には後から無料でアクセスできるように なるそうです。( http://shop.oreilly.com/product/0636920024743.do ) !!!!!安く買いたい人は http://shop.oreilly.com/category/deals/early-release.do?code=WKERRLS をよく読んでね!!!!! このは、今まで外に伝わりづらかった OCaml プログラミングの最前線の一面を 伝

    Real World OCaml が出ました - camlspotter’s blog
    masquerade0324
    masquerade0324 2013/06/27
    欲しい.
  • Introduction to Fay - 純粋関数空間

    Fay をいじってみたので、 せっかくだから記事を書いておこうと思います。 なお、Fayは新しい言語(というより、処理系と言った方が適切かな)ですので、 ここに書いてある情報は、来年か、あるいは半年後か、 それとももっとずっと早くに陳腐化する可能性がそれなりに低くないことを、 あらかじめお断りしておきます。 この記事執筆時に用いたFayのバージョンは、 fay-0.14.5.0 です。 デモ・前置き 特に何か作りたいものが有ったわけではなかったので、 今回作ってみたものは超どうでも良いツールです。 http://tanakh.jp/tools/sudden.html _人人人人人人_ > 突然の死 <  ̄Y^Y^Y^Y^Y ̄ こういうテキストを生成するだけのツールです。 Fayのコード HTMLコード これらのコンパイルなどもhakyllでまとめて管理できるようにしました。 hakyllに

  • はてなブログで MathJax を利用して、MathML で数式を表示する - ksmakotoのhatenadiary

    MathJax プロジェクトがこれまで提供に利用してきた CDN の運用が止まります(2017年4月末)。 https://www.mathjax.org/cdn-shutting-down/ を参考に、新しい CDN の URL に移行するようにしてください(以下の記述は、まだ移行に対応していません(すいません、そのうちいろいろ確認して直します)) この記事で紹介するのは HTML の内容を書き換えるような JavaScript の導入方法ですので、何らかのトラブルを起こす可能性があります。十分に注意して実行してください(特に、過去に書いた記事中に LaTeX の数式記述が含まれていた場合、それが表示の際に書き換えられる、という副作用があります)。 MathJax は、Ajax 的な技術により、LaTeX 記法で HTML 中に書かれた数式を、ウェブブラウザで印刷物のような見た目になるよ

    はてなブログで MathJax を利用して、MathML で数式を表示する - ksmakotoのhatenadiary
  • 1