主にプログラミングに関して。Python, .NET Framework(C#), JavaScript, その他いくらか。
記事にあるサンプルやコードは要検証。使用に際しては責任を負いかねます

スポンサーサイト

                
tags:
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Boo: Win, Mac, Linuxをまたいで動作するPythonとC#をまぜたような言語

                
 .NETやMonoで動作するC#やIronPythonを書くとき、IDEとしてSharpDevelopを使っている。このSharpDevelopでプロジェクトを作ろうとすると、一番上に『Boo』という言語が出てくるが、まあ標準的な.NETやMonoのクラスを使ってプログラミングするぶんにはC# + IronPythonで十分だと考えて触れてこなかった。


 ふとUnityのサンプルを見ていた。サンプルはC#とJavaScriptに加え、Booでも書かれていた。どんなんじゃBooって。百問は一見にしかず。まずはスクリプトを書いてしまえ。

print 'Hello Absurd World!'


3 + 3


li = [x for x in range(10)]


def HelloWorld(mozi as string) as string
print 'Hello, world'
return 'Hello'


name = 'John Doe'
print 'Hello, ${name}'


import System

Console.WriteLine('Hello Absurd World!')

print "Press any key to continue . . . "
Console.ReadKey(true)


これはまるでPython。だけど微妙に違う。Pythonのようなインデントによる構造で書けるC#? なんとも言い難いが、PythonとC#を組み合わせたようなものだ。そして静的型付け言語。MATLABやJavaScript、Pythonとインタープリタに打ち込める言語はいくつかやってきたが、インタープリタ付きで静的型付けは初めてだ。興味深い。

最近は開発が落ち着いてしまっているように見えるけど、UnityではBooで書かれたサンプルがある。ちょっと気になる言語だなぁ。UnityにIronPythonを持ち込んでみようと考えていたけど、Booをやってみるのがいいかもしれない。追々もう少し掘り下げて実用性を考えてみよう。

とりあえず今回は実行形式ファイルの用意までをやってみた。.NET 4.0のWin7、.NET 4.5のWin8環境で動くのを確認した。

import System

Console.WriteLine('Hello Absurd World!')

print "Press any key to continue . . . "
Console.ReadKey(true)





かなり参考になりそうなところは下記

http://d.hatena.ne.jp/coma2n/20080820/1219207907

http://www.asahi-net.or.jp/~sy7a-ht/diary/tut_boo.html

http://boo.codehaus.org/Tutorials

https://github.com/bamboo/boo/wikiprint 'Hello Absurd World!'
            

コメントの投稿

非公開コメント

プロフィール

Matoba

Author:Matoba

最新記事
リンク
作ったものなど
月別アーカイブ
カテゴリ
タグリスト

検索フォーム
Amazon
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。