タグ

ブックマーク / mzp.hatenadiary.org (4)

  • JSXよりHaxeがイケてる3つの理由 - みずぴー日記

    Javascriptを生成できる言語『JSX』がリリースされました。めでたいですねー。 ただ同じくJavascriptを生成きるHaXeのことが忘れられている気がするので、宣伝します。 ステマじゃないよ! 型推論がイケてる 現時点でJSXには型推論が実装されてないので、関数を定義するには全ての型を書く必要があります。 // JSXだよ! function add(x : number, y : number) : number { return x + y; } これだけなら特に問題ないように見えますが、これが高階関数を定義しようとするとどんどん複雑になっていきます。 // JSXだよ! function f(g: function(:number):number): function(:number):number { return function(x: number): number

    JSXよりHaxeがイケてる3つの理由 - みずぴー日記
    mnru
    mnru 2013/02/18
  • let多相を持った言語を実装したよ - みずぴー日記

    これは何? Types and Programming Languages (The MIT Press)やプログラミング言語の基礎理論 (情報数学講座)を読んだけど、let多相がよく分からない。 ならば、let多相を持った簡単なプログラム言語を作ってみよう。 名前は「Scala + let多相」なんでscalet。別にScalaの拡張というわけではない。 どんな機能があるの? 定数は、intとbool。 scalet> 42 - : int = 42 scalet> true - : bool = true 構文はletとif、あと関数を作るfn。 scalet> if true then 42 else 0 - : int = 42 scalet> let x = 42 in x - : int = 42 scalet> fn x -> x - : (a0 -> a0) = - あと適

    let多相を持った言語を実装したよ - みずぴー日記
  • Scala座で「Scalaによる型推論の実装」という発表をしてきました - みずぴー日記

    SacalaZa #1View more presentations from mzpi. http://scalaza.com/ScalaZa01/で発表してきました。 Ustもあるらしいですが、怖くて確認できていないです。 LTでもないのにScalaとあんまり関係ない話をするとか空気読めてない感じでごめんなさい。 感想 わらびもち! 受け付けしてました。 「弊社にくればScalaのお仕事あります!」っていっている人がそこそこ居て、わくわくしました。 懇親会で何を話したかほとんど記憶にないのですが、id:bleis-tiftさんとかid:a-hisameさんのブログを見る感じだと、いろんな言語の話で盛り上ったり、名古屋ハッカソンの話をしてたっぽいです。名古屋ハッカソンは是非やりましょう。

    Scala座で「Scalaによる型推論の実装」という発表をしてきました - みずぴー日記
  • ScalaでCompositeパターン - みずぴー日記

    30分プログラム、その448。Scalaのcase classを使って、Compositeパターンを作ってみる。 ディレクトリみたいなツリー状になっているデータ構造を表現するのに、とっても便利なCompositeパターンをScalaで書いてみよう。 まずは普通に定義しよう。 まずは、増補改訂版Java言語で学ぶデザインパターン入門に載っているコードを、そのままScalaに移してみよう。ただ、全部マネすると大変なので、機能をサイズ取得だけにしぼる。 UMLにするとこんな感じ。 abstract class Entry{ def size : int } class File(n : int) extends Entry{ def size : int = n } class Directory extends Entry{ import scala.collection.mutable.Li

    ScalaでCompositeパターン - みずぴー日記
    mnru
    mnru 2010/05/06
  • 1