タグ

ブックマーク / inforno.net (5)

  • inforno :: 基礎を終えた人のScalaミニtips

    どう書く?orgでScalaを書いてくれる人もでてきたので、超一部の方向けにScalaのことでも書いてみようと思います。言うなれば、基礎を終えた人のScalaミニtips。知っている人は知っている、でもあまり知られていないことを並べていきます。 下に行くほどマニア度あがります、たぶん。FPよりの話が多いかもしれません。はやりのYコンビネータの話とか。たぶん。 ではいってみましょう。 Predefされているものは把握しておきましょう Scalaにはscala.Predefというオブジェクトがあります。この中で定義されているものは常にインポートされていて使える状態になっているので把握しておきましょう。 例: 1def exit(status: Int): Nothing = { 2 java.lang.System.exit(status) 3 throw new Throwable() 4}

    nak2k
    nak2k 2010/05/06
  • inforno :: rayphe - 軽量Python web framework

    ちょっと前にRubyでSinatraが取り上げられて、結構注目されたように思います。ということはRailsだと大げさすぎるなあ、と思うような場合に対する需要というのはやっぱりそれなりにあるんですよね。 Pythonで軽量、というとweb.pyが一番有名ですよね。他にはJuno、Bottleなんかがあります。 このブログで使っているのはweb.pyです。結構昔から使っています。が、不満もおおくweb.pyを拡張するようなライブラリを作っていて、それがそこそこの量あったりします。 そこで、これくらい量があるなら自分でフレームワーク作っても大してかわんなくね?と思い始めました。あれ、そういえば俺、テンプレートエンジンもつくっちゃってるじゃん、簡易O/Rマッパも自分用につくってあるじゃん、と次々に気づき始め、それらをまとめて作っちゃいました。軽量フレームワーク。 raphe 「raphe」はPyt

  • inforno :: Python:re.ScannerでS式パーサ

    Rubyの StringScanner は個人的にかなり好きなモジュールで、Rubyでちょっとしたパーサなどを書くときに重宝しています。 一方、Pythonにはexperimentalながら re.Scanner というクラスがあります( >= 2.4 )。experimentalなのでマニュアルにはのっていませんが。この re.Scanner はかなりシンプルなんですが典型的な StringScanner の使い方の範疇では、こちらのほうがキレイに書けるような気がします。 re.Scanner の使い方 使い方は非常に簡単で (regex, action) のリストを渡してScannerオブジェクトを作成 action は(scanner, string_matched) => stringな関数、Noneを返せば結果は無視される。 scanメソッドでスキャン。結果が配列で返ってくる と

  • inforno :: Javascriptでパーサジェネレータを書いてみた

    ちょっと前にjavascriptで構文解析とかがはやった気がするので、javascriptのリハビリがてらかいてみた。 ググってみると Jsparsec - JavaScriptパーザコンビネータライブラリ HaskellのMonadをJavaScriptで実装するとしたら あたりがあるのだが、まぁ勉強ということで。javascriptらしく書いてみようかと。 ということで、モナドがどーたらとか難しい話はまぁおいておいて、簡単に値がとりだせますよ、という見栄え重視で作ってみた。基的な機能しかない。けど拡張するのは簡単。せめて相互再帰くらいは実装したほうがよかったかな。まぁ、こんなの真剣に使う人もいないと思うので、要望があればってことで。ちなみに依存するライブラリはありません。 ダウンロード : Inforno.Parsec たとえばこんな感じにCSVのパーサが定義できる。withを使って

  • inforno :: キーボード派のWindows開発環境

    そういえば、こういうサイトに定番っぽい開発環境を書いたのがないので、自己紹介?も兼ねて晒してみます。 開発はだいたいWindows上のvmware(Debian)でやってます。ただし、そこは定番どころばっかりなのでパス。まぁvim+screen+zshです。puttyでつないでますよ。sambaでマウントしてますよ。ええ。それぞれ結構設定しまくっていて、グローバルなSVNサーバーにおいてあります。 Windowsでの開発環境 あんまりWindowsは好きではないけど、Macよりは好きだったりする。というわけでWindows。普段使いのOSでもあるので、主に自分用の小物を書くことが多いです。怠け者なので、自動化できるものはすぐプログラムに置き換えちゃいます。でも言語は結構様々。もとから言語にこだわらず、一番適しているものを使う主義なので小物が多いにもかかわらず、言語は結構多いのかも。 今のと

    nak2k
    nak2k 2007/01/17
    ctlcがよさげ。
  • 1