Pythonプログラマー歓喜!JavaScriptの代わりにPythonが使える「Brython」
BrythonはJavaScriptの代わりにPythonを使ってプログラミングできるようにするライブラリです。
Webブラウザ標準で使えるプログラミング言語と言えばJavaScriptです。しかしそれだけでは満足できない、そんな方が開発したのがBrythonです。Webブラウザ上でPythonが書けてしまいます。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.45.57_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.45.57.png)
アナログ時計です。ちゃんと秒針が動いています。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.03_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.03.png)
コードは見事にPythonです。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.22_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.22.png)
Ajaxのデモ。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.27_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.27.png)
やはりちゃんとPythonコードです。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.39_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.39.png)
テーブルのソートデモ。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.48_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.46.48.png)
Importも使えて便利です。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.47.01_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.47.01.png)
左右にデータを移動させるデモ。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.47.07_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.47.07.png)
ボタンやコンポーネントをPythonの中で生成しています。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.47.48_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.47.48.png)
3Dを動くデモ。
[![](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.48.01_thumb.png)](http://images.moongift.jp/2012/12/Screenshot 2012-12-17 10.48.01.png)
エリア情報を含めてPythonで定義されています。
BrythonはHTMLコンテンツのハンドリングはもちろん、Ajax、ローカルストレージ、Canvasの操作もできます。HTMLのクリックなどのイベントハンドリングもできるので殆どのプログラミングをPythonとしてこなせるのではないでしょうか。
BrythonはJavaScript製、New BSD Licenseのオープンソース・ソフトウェアです。
MOONGIFTはこう見る
Web上でJavaScript以外のプログラミング言語を動かす試みは数多く行われています。一つはCoffeeScriptやTypeScriptのように代替言語を目指すもの、もう一つはRubyやPythonといった既存言語をWebブラウザ上で動かす試みです。もう一つ、DartのようにJavaScriptとともに実装されるのを目指す言語もあります。
いずれの試みも興味深いのですが、決定打に欠けているように見えます。唯一CoffeeScriptはコミュニティベースで広がりを見せていますが、まだまだ一般的に普及するまでに至っていません。デファクトになりえるエッセンスは何か、それを考えてみると面白いかも知れません。