タグ

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

  • inforno :: 個人的Go雑感&メモ

    GoogleGoという新しいプログラミング言語 を出したようで。早速、インストールして軽くドキュメントを流し読みしてみました。 英語なんて読みたくないよ、という人もいるかもしれないし、誰かの役に立つかもしれないので自分用メモおいときます。完全に自分用なんである程度他の言語の知識がある人向けな上、ざっくり流し読みなんで間違ってるかも。 どんな言語? ネイティブコードを吐く、コンパイル型。 速度はCレベル。 GC搭載。ポインタはあるけど、ポインタ演算はできません。 各種アーキに最適化された、それぞれのコンパイラセットを持ちます。例: 6g, 6l : amd64 8g, 8l : i386 linux, mac, naclに対応。 動的型言語と静的型言語のおいしいとこどり。 concurrent処理が組み込まれてます。 個人的雑感 こんな言語設計思想かなあと感じたり とにかく、シンプルな言

    uemu
    uemu 2009/11/12
    分かりやすい
  • 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

    uemu
    uemu 2009/02/13
    自分しか使わないWebアプリやweb.pyを使うときに
  • inforno :: Python版Yahooテキスト解析 APIライブラリ

    趣味プログラマやってるわけですが、最近はずっとC言語を書いています。やっぱCはいいですね。あと3Dモデリングに手を出し始めました。目指せ最強の器用貧乏。 というのは置いといて、Yahooのテキスト解析API出ましたね。これは便利そう。というわけで、Pythonのライブラリ置いておきます。 ダウンロード 使い方 ソースに書いてあるんですが、こんな感じです。 [python] import yahooapi.jlp as jlp client = jlp.MAServiceAPI("your_appid") result = client.parse(sentence=u"庭には二羽ニワトリがいる。", results= jlp.MA+jlp.UNIQ, filter = jlp.VERB + jlp.NOUN) print result.ma_result.word_list.word[0

    uemu
    uemu 2007/06/21
    これはこれは
  • inforno :: PythonによるNESエミュレータ開発2

    実は既に結構挫折気味。 やっぱりPythonではちょっと厳しいかもしれない。 とりあえず一番ややこしいPPU周りの情報を調べて、ちょろちょろ書き始めたあたりでいったんCPU部分のパフォーマンスを調べてみました。 かなり厳しいものがあります。CPU部分のコードはPython的な書き方で書いてたんですが、これじゃ話にならない。まず、アクセサなんてものはつかっちゃいけないのだ。 以下環境はOS:WinXP,CPU:Athlon64 3000+,Memory:1G,Python2.4です。 CPUのレジスタ関連の実装 NESのCPUである6502のレジスタはPCは16bit、それ以外は8bit。8bitの値なんてものはCならunsigned charで一発なんだけど、Pythonにはそんなものない。足し算したらどんどん大きくなるし、引き算したらどんどん小さくなる。ので 1class Py6502(

    uemu
    uemu 2007/05/09
    getattrは遅い。getattrの真価は第3引数でdefault値が指定できること(だと思う)
  • inforno » Python:続・アクセサの生成

    以前書いてみたアクセサ をpropertyを使って改良してみる。 propertyというのはnew-styleクラスに対してのみ使える、メソッドで 1class C(object): 2 def __init__(self): self.__x = None 3 def getx(self): return self.__x 4 def setx(self, value): self.__x = value 5 def delx(self): del self.__x 6 x = property(getx, setx, delx, "I'm the 'x' property.") こんな感じで使う。 Rubyを使った人なら分かると思うけど、プロパティ名でのアクセス=アクセサ呼び出しになるのは結構便利。 ActiveRecordなんかでは、特に便利だと感じる。あ、このプロパティ、もういっそ

    uemu
    uemu 2007/01/15
    ほお
  • inforno :: Python:アクセサの生成

    Pythonの練習がてら、アクセサの生成をやってみる。どうせ探したらいっぱいコードが転がってるだろうし、練習にはうってつけかな、と。 まず、ダメそうだけど、Rubyをやってる人からするとこうかきたい、というコード。 1class Test(Accessor): 2 attr_accessor("__test", "__test2", "test3", "_test4") 3 4 def __init__(self): 5 self.__test = "test_value" 6 self.__test2 = "test2_value" 7 self.test3 = "test3_value" 8 self._test4 = "test4_value" こんな感じ。まぁ、絶対にダメそうだ(笑 でも組み込みとはいえ、classmethodやstaticmethodみたいなのもあるから無理やりに

    uemu
    uemu 2006/11/14
    おぉ 詳しく調べないと
  • 1