月別アーカイブ: 2008年1月

JS,PythonでSchemeを。。。頭のいい人がうらやましい

[pukiwiki]
あたまのいい人たちがうらやましい(スネ)

*[[PythonでSchemeを作りました:http://d.hatena.ne.jp/nishiohirokazu/20080121/1200888986]]
*[[Schemeを作ろう的(ひげぽん OSとか作っちゃうかMona- ):http://d.hatena.ne.jp/higepon/20080121/1200901917]]
*[[Scheme on JavaScript 作りました:http://d.hatena.ne.jp/yukoba/20080120/p1]]

*[[僕 Lisp:http://amachang.art-code.org/scheme/]]
“僕が作った僕 Lispです

*[[JSOnSchemeはかなりいい読み物:http://d.hatena.ne.jp/authorNari/20080123/1201092904]]

*[[Python解析木にアクセスする parserモジュール:http://www.python.jp/doc/2.4/lib/module-parser.html]]
*[[Python コンパイラパッケージ:http://www.python.jp/doc/release/lib/compiler.html]]

Pythonのプログラムを構文木にパースするモジュール。
構文木を読むと面白い(実際にはバイトコードで実行されるので、これは、あくまでも人間が読む用らしいですけれども。)
アトムを、オブジェクトの型で区別するのでなく、実は制御コードとデータをセットにしたタプルで格納されてたりして

—-

*[[もっと知りたいPython3000 – 言語仕様,組み込み関数,クラスへの変更:http://coreblog.org/ats/gihyo-python3000-3]]
*[[もっと知りたいPython3000 第3回 言語仕様,組み込み関数,クラスへの変更:http://gihyo.jp/dev/feature/01/python3000/0003]]
*プログラミング日記: 3.0a1の新機能 (by morchin)
-[[(1):http://d.hatena.ne.jp/morchin/20071001#p1]]
-[[(2):http://d.hatena.ne.jp/morchin/20071206#p2]]
-[[(3):http://d.hatena.ne.jp/morchin/20070903#p1]]

//*[[Pythonのクロージャの制限とその回避策:http://d.hatena.ne.jp/hiratara/20080123/1201071432]]

Python関連ここまで

—-

*[[Flashで動作する本格的なノベルゲーム実行エンジン「LemoNovel」:http://www.forest.impress.co.jp/article/2008/01/23/lemonovel.html]]
半年ぐらいFlashに触ってないオレがいる

*[[オライリー風の表紙がつくれるジェネレータ『O’Reilly Maker』:http://www.ideaxidea.com/archives/2008/01/oreilly_maker.html]]
*[[Prototype 1.6のチートシート:http://builder.japan.zdnet.com/news/story/0,3800079086,20365666,00.htm]]
Prototype.jsまでは手が回らないけど。
//*[[CLIマジック:ANSIエスケープシーケンスを使って端末に時計を表示する:http://opentechpress.jp/developer/08/01/24/0158202.shtml]]
//昔なつかしいエスケープシーケンス。
*[[JavaScriptの勉強はこのコンテンツで – Eloquent JavaScript:http://journal.mycom.co.jp/news/2008/01/23/026/index.html]]
当面Pythonで手一杯なのでメモだけ。
//*[[2010年に勧告される「HTML5」は「HTML4」と何が違うのか?:http://gigazine.net/index.php?/news/comments/20080123_html5_differences_from_html4/]]
//メモだけ。
—-

[/pukiwiki]

「Reinteract」Python(NumPy)のインタラクティブ環境 他

[pukiwiki]

*ケイゾク
継続とは……勉強中
-[[ググる:継続 call/cc]]
—-
いろいろと脈絡無くクリップ

*週刊Python
-[[2008年1月 第2週:http://atnex.blog107.fc2.com/blog-entry-58.html]]
-[[2008年1月 第3週:http://atnex.blog107.fc2.com/blog-entry-62.html]]

*[[USB学習リモコン RemoteStationを買った:http://sklave.jp/200801190420/]]
欲しくなってきた。Pythonで遊べるようです。
*[[Wikipediaに登録されている最も長い言葉:http://d.hatena.ne.jp/ctrlshift/20080119/1200719590]]
早口言葉みたい

*Reinteract
Pythonのちょっと不思議なインタラクティブ環境です。
SciPyなど、いろいろとライブラリをそろえるのがめんどくさかったので私はインスコしてませんが、デモを見る分にはすごく楽しそう。
-[[Reinteract:http://www.reinteract.org/trac/]]
-[[Windowsへのインストール方法:http://blog.fishsoup.net/2007/11/18/reinteract-on-windows/]]
-[[スクリーンキャスト(5分):http://www.gnome.org/~otaylor/reinteract-demo.html]]
-[[Reinteract紹介記事(英語):http://fishsoup.net/software/reinteract/]]
-[[Pigmentと組み合わせて:http://base-art.net/Articles/92/]]~

中の仕組みの解説を読むに、一行実行するごとに変数を全部保存。。。つまり、一行ごとに継続オブジェクトを作ってるようなもの?

*[[Elisa:http://elisa.fluendo.com/]]
Pythonで書かれたメディアセンターっぽいプログラム。
[[スクリーンショット:http://elisa.fluendo.com/screenshots/]]
見る分にはカコイイのだけど、再生すべき音楽とか動画をそれほど持ってないので使わないかな。。。GUI作成には上記のPigmentを使用、とのこと。

*[[pythonのthreading.local()の動作:http://assam-at-night.blogspot.com/2008/01/pythonthreadinglocal.html]]
“以下の解釈は間違い。

のような理解をしておりました orz
[/pukiwiki]

「Resolver One」 .NETで Pythonな表計算ソフト

[pukiwiki]
(多分)IronPythonで書かれたスプレッドシート。ver 1.0が公開されたので、軽く紹介記事。

***配布サイト [[Resolver Systems:http://www.resolversystems.com/]]

商用 $200 (期間限定で$100)
使用して作成したコードをオープンソースなライセンスにするなら無料。(無料版と商用版には、コンポーネントなどに違いがあるかも)

土日使って、試してみたいと思います。

*ダウンロード&インストール
.NET2.0が必要。.NETってことは、うまくやれば、USBメモリなどで持ち運びできるかしらん?

*で、これって何?
ResolverOneはIronPythonのIDE(開発環境)と表計算が一体となったソフトです。

普通、表計算ソフトでは、表のマス目(セル)ごとにコードが書かれています。
このソフトも、そのような使い方も出来ます。が、作成した表(のプログラム部分)を、Pythonのソースコードとして編集することもできます。

*あなたがResolver Oneを使うべき5つの理由
[[5 reasons to try ResolverOne:http://andrzejonsoftware.blogspot.com/2008/01/5-reasons-to-try-resolver-one.html]]
から抜粋

+スプレッドシートとIronPythonのIDEが合体してる。スゲー
+メンテナンス可能な表を作成できる
+テストができる([[チュートリアル:http://www.resolverhacks.net/testing_spreadsheets.html]])~
*IronPythonとは
私自身も、.NETな環境用のPythonってことしか知らないんですが。
-[[ググる:IronPython]]
-[[IronPython(ウィキペディア):http://ja.wikipedia.org/wiki/IronPython]]

*チュートリアル
現状、ソフトもドキュメントも英語のみなので少しつらいところ。
ソフト本体にも、結構な分量のドキュメントが付属してきます。

:[[Resolver Hacks:http://www.resolverhacks.net/]]|サンプルコードなどが有るもよう
:[[本家ドキュメント:http://www.resolversystems.com/documentation/index.php/Main_Page]]| .

*で、私の感想
アイディアは凄く面白いと思うのですけれども。
-かなり動きがモッサリしてるような。。。
他のソフトと同時起動だったので、あとで再起動かけてやり直してみます。
-時々落ちる
-日本語を入力すると、実態参照になってます。
_Constants = {
_ ‘Sheet1’: {
_ (1, 1): ‘ID’,
_ (1, 2): u’\u9234\u6728′,
_ },
_}

これはちょっとツライ。

表の中身全部を辞書に入れてるもよう。
でかい表になると、そのあたりも不安。。。

現状では、本格的なプロジェクト用よりも、ちょっとしたツールを作ったりするのに向いてるのかも。

私自身はIronPython触るの初めてですし、詳しい人の日本語記事を読みたいですー

*作成したコード自体は、ResolverOne無しでも動かせるのかも
ResolverOneのAPI使ってたらムリだと思いますけれども。
うまく使えば、コードジェネレータとして有用なのかも。
*一時撤退~
-2008/01/19 18:00~
アイディア自体はすごく面白いと思うのですけれども、私の頭には少しややこし~(汗
Blenderも、初期バージョンは???と思ったのですけれども、最近のバージョンはかなり性能が上がってますし、このソフトも将来に期待、ということで。

[/pukiwiki]

Python スレッド/並列プログラミング関連チュートリアル他

[pukiwiki]
今回は、ちょっと前の記事が多いです。
//http://article.gmane.org/gmane.comp.python.stackless/2272
私はPythonを静止画の画像処理、AVIファイルのエフェクト、Blenderのマクロなど、シーケンシャルな処理に使いたいだけなので、並列処理は使わないのですけれども。。。でも、マルチコアなCPUが当たり前な時代なので、少し勉強してみようかしらん?と。ビットマップへの画像処理は並列化しやすいですし。

*[[PyMOTW threading:http://blog.doughellmann.com/2008/01/pymotw-threading_13.html]]
スレッド関連をステップバイステップでチュートリアル。ページの下のほうに行くとややこしー(涙目

*[[Pythonジェネレーターで「無重量スレッド」を実装する:http://www.ibm.com/developerworks/jp/linux/library/l-pythrd/]]
上のチュートリアルを勉強してから、もう一度読み直してみたい
*[[threading — 高水準のスレッドインタフェース(リファレンス):http://www.python.jp/doc/current/lib/module-threading.html]]

—-
スタックレスPython関連。ある程度増えたら別記事に移動予定

*[[Stackless Python(本家):http://www.stackless.com/]]
並列プログラミングに特化した機能を持つ実装、スタックレスPython
既存のCPythonとの共存はできるのかしらん?
(既存のPythonインタプリタを上書きする形でインストールするので、共存できないかも。。。)
*[[Python実装に駆り立てたもの(日本語):http://www.ibm.com/developerworks/jp/linux/library/l-pyth7/]]
VyperおよびStackless Pythonの作者とのインタビュー
*[[Introduction to Concurrent Programming with Stackless Python:http://members.verizon.net/olsongt/stackless/why_stackless.html#why-stackless]]
チュートリアル.

*[[EVE Onlineとstackless python:http://d.hatena.ne.jp/faw/20071029/1193673206]]
MMORPGも書ける
*[[[Lua] スタックレスってどういうこと?:http://hammm.blog21.fc2.com/blog-entry-54.html]]
Cスタックを使わないからスタックオーバーフローが起きない、という逆転の発想(汗
*[[マイクロスレッドをシリアライズ(Yの砂場):http://d.hatena.ne.jp/jbking/searchdiary?word=*%5BStackless%5D]]
taskletをファイルに保存 -> 他のマシンで実行 ->分散コンピューティング
チャネルとかどうするのかは知らない。。。
—-
*Pythonでの関数プログラミング
-[[第1回:http://www.ibm.com/developerworks/jp/linux/library/l-prog/]]
-[[第2回:http://www.ibm.com/developerworks/jp/linux/library/l-prog2/]]
-[[第3回:http://www.ibm.com/developerworks/jp/linux/library/l-prog3/?ca=dnj-1226]]

あとで読む、かも。

—-
//http://pythonpapers.org/
*[[Universal Encoding Detector:http://chardet.feedparser.org/]]
これを入れておくと、[[BeautifulSoup:http://www.crummy.com/software/BeautifulSoup/]]で日本語Webページを解析する際、文字コードを自動判定してくれる。超便利。
-[[ググる:BeautifulSoup]]

BeautifulSoupに関する日本語記事では触れられてなかったので、気が付くのに、かなり時間がかかりました((ドキュメント読め))

*[[文字コードの判定(かせきのうさぎさん):http://d.hatena.ne.jp/itasuke/20061228]]
自前で判定する方法&まる付き数字も変換!
—-
*Candygram : Pythonで書かれたErlang
メモだけ
-[[Erlang(ウィキペディア):http://ja.wikipedia.org/wiki/Erlang]]
-[[twitterブームの陰で注目を集める“Erlang”:http://www.atmarkit.co.jp/news/200704/27/erlang.html]]

[/pukiwiki]