タグ

ブックマーク / basking-cat.blogspot.com (3)

  • ClojureとFXML

    JavaFX for Linux キタ━(゚∀゚)━! ということでさわってみました。 ただ動かすのも面白くない、というかJava面白くない、ということでClojureから呼び出してみました。 JavaFXで私が一番注目していたものはFXML。 XMLは好きじゃないけど、ちゃんとロジックが分離できそうだし、GWTのUiBinderを気に入っていたので楽しみにしていました。 というわけでClojure+FXMLで書いてみました。 プロジェクトの設定(Linux) Leiningenを使います。 多分Winの場合はそのまま動く。 Linuxの場合は http://www.oracle.com/technetwork/java/javafx/downloads/devpreview-1429449.html から Linux 32-bit をダウンロードして、 lib に jfxrt.jar を

    ClojureとFXML
    Hash
    Hash 2013/08/18
    ClojureでJavaFX Controllerの@FXMLアノテーションを扱う方法いろいろ試行錯誤してる. 解決編エントリによれば, fx:scriptを使ってJSやらClojureやらJRubyやらでアクションを書いてやれば良いみたい
  • ClojureとFXMLとRuby

    この前Clojureで試したのですが、fx:idが使えず微妙な感じでしたが、解決方法を見つけました! JavaFXではfx:scriptタグというのがありますよね? このタグにJavaScriptのコードを書いているサンプルコードをよく見ますが、実はこれ、 JavaScript以外でも動くのですよ! いや、まずJavaScriptが動いているという時点でなにか疑問を持たなければいけなかったのですが。 fx:script この機能はJSR-223で実現されています。 恐らく。 この機能標準ライブラリにあることを最近知りました。 わざわざダウンロードしていたのは何だったのか・・・・・ fx:scriptを使うためには、言語を指定します。 この時に、FXMLLoaderはgetEngineByNameを使ってスクリプトを実行するためのScriptEngineを取得します。 なので、JSR-223

    ClojureとFXMLとRuby
    Hash
    Hash 2013/07/19
    fx:scriptタグで挟んでやるとJavaScriptやらClojureが動く! すごい. 公式これか => http://www.jcp.org/en/jsr/detail?id=223
  • Clojureでモナド内包表記とStateモナド

    cljsbuildのcrossoversという機能を知らない所為で今まで無駄に苦労してきましたが、これでマクロが使えないという制約から解き放たれました。 万歳!cljsbuild! マクロが使えるようになってまず一番最初にやることは何か? もちろん、モナド内包表記の実現ですね! HaskellのdoよりはScalaのforの方が慣れているのでこちらを採用しました。 動的型付けの言語でのモナドの実現はいくつか見てきましたが、明示的にコンテキストを指定するタイプはあまり好かないので、ClojureらしくProtocolで表現することにしました。 Monadic Protocol 通常モナドはunitとbindが実装され、モナド則 bind f (unit x) == f x bind unit m == m あともう一個なんかあった気がする を満たしますが、動的型付けの言語でunitを実現する

  • 1