タグ

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

  • inforno :: rayphe - 軽量Python web framework

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

  • inforno :: 埋め込みPythonを実装してみました

    更新履歴 2009/02/20 version 1.0.0 Renderer と Helper を追加。詳しくはソースファイルヘッダ部分のドキュメントを参照してください。 2009/02/17 version 0.5.0 <%= %> で自動的にフィルタを適応できるようになりました。また、 render メソッドが unicode オブジェクトではなく unicode のサブクラス EmbpyString オブジェクトを返すようになりました。filterは EmbpyString オブジェクトをスルーします。これにより2重でfilterが適応されることがなくなります。<%=r %>でフィルターをオフにできます。 1Embpy("<%= b %>", filter=cgi.escape).render({"v":"<b>"}) 2# => "&lt;b&gt;" 3Embpy("<%=r b

  • inforno :: 日本語プログラミング言語Scala

    via 第20回 日語でおk Ruby もいいけど Smalltalk でも、おk。 Scalaはメソッド名に日語使えるよ。Scalaは日語プログラミング言語だよ(言いすぎ)。 1object JapaneseLanguage { 2 class Standard[A](self:A) { 3 def の[B](f:(A) => B) = f(self) 4 def を[B](f:(A) => B) = f(self) 5 def する() = () 6 } 7 8 class PseudoKansai[A](self:A) { 9 def のな[B](f:(A) => B) = f(self) 10 def をな[B](f:(A) => B) = f(self) 11 def すんねん() = () 12 } 13} 14 15 16def 平方根(v:int) = Math.sq

  • inforno :: OreScriptがはやってるならパーサコンビネータの需要もあるのかな?

    近頃、 JavascriptでOreScript なんてのがちょっとはやっていたりしまして。 OreScript書くのにある程度ちゃんと動くパーサコンビネータがあれば便利かも、とおもったので以前書いたパーサコンビネータをいじってみました。 変更点 メソッド名などをHaskellにあわせた よくもわるくも、記号含有率をあげた(and -> $に、or -> l に) 相互再帰をサポートした 左再帰(chainl1)をサポートした 右再帰(chanr1)をサポートした ということで、そこそこの用途に耐えるものになったと思います。 ダウンロード 完全にアンドキュメントです。すみません。ただ、ソースは200行くらいなんで見ればわかるかと。というか、HaskellのParsecのマニュアルを読めば基一緒なので使い方がわかると思います。 ダウンロード サンプル id:amachangさんが書いていた

  • inforno :: 手っ取り早く基礎を学ぶには

    またまたマシン語がどーたらの話なんですが。 id:amachangが「マシン語やりたい!」といってるのをみて。 だって、普段パソコン使ってるけどパソコンのこと全然分かってないもん。 WindowsMacLinux も同じ CPU で動かせるのに、なんでバイナリが違うの?マシン語 = バイナリじゃない? ハードディスクを管理してるのは、OS なのに(これが間違い?) OS のプログラムはどうやってハードディスクから起動されるの? とかとか、僕正直パソコンのこと全然分かってないよ。恥ずかしいけど。 とのことらしいですが、俺は一芸あれば別に低レイヤ無理にしなくてもいい、ってタイプなんですが、まぁPHPとかJSが出てきてホント高レイヤで活躍してる人も増えて、基礎に不安をもっていたりするんだなあ、と思いました。 個人的にそういう人は情報処理試験技術者試験の「ソフトウェア開発者」あたりの解

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

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

  • 1