トップページ⇒tech
42コメント9KB

スクリプト言語Air

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
http://sourceforge.jp/projects/air-lang

(doc/intro.txtより)

スクリプト言語AIRは、新しく簡潔で自然なスクリプト言語です。

ここで「自然」という意味は、日本語や英語といった人間の話す自然言語に似
た構文をもつことを意味するものではありません。

日頃からコンピュータのプログラミングやシステム管理等を行っている人々
− 特にUNIXやC言語に日頃から親しんでいる人々 −
に違和感を感じさせないと言う意味の自然です。


0002デフォルトの名無しさんNGNG
■AIRの特徴:

AIRのソフトウェアとしての特徴を幾つか上げてみますと、

・オープンソースであること。(GPL)
・スクリプト言語であること。
・開発者が日本人であること。

等があげられます。


一方で、スクリプト言語としての特徴は、

・構文がシンプルで直観的なスクリプト言語であること。
・各種UNIXツールやC言語の考え方を、そのまま素直に発展させていること。
・実行速度が速いこと。

等があげられます。


0003デフォルトの名無しさんNGNG
Rubyでいいじゃん
0004デフォルトの名無しさんNGNG
■AIRのプログラム例:

(1)文字列の表示
printf("Hello World!\n")
fprintf(stderr,"Error Code = %d\n",39)
(2)文字列の演算と正規表現によるマッチ検査
x="AAA"
y="BBB"
z=x+y
if("/AA.*[B-X]/"=~z){
print("Matched!!\n");
}
(3)数値計算(整数と実数)
x=3.14
y=6.999E-123
z=-2*10
z=atan(x+(y%z))
(4)多次元配列とハッシュ
a[0]=3.14
a[1]="TEST\n"
a[2,4,6]="OK!\n"
a[3,"name"]=24
(5)関数定義と呼び出し
total=sum(3,4)
print("Total=%d\n",total)
def sum(x,y){
sum=x+y
return(sum)
}
0005デフォルトの名無しさんNGNG
とりあえずスレ立ててみた。
まぁmatzの日記を見たクチなわけだが。
0006デフォルトの名無しさんNGNG
> オープンソースであること。(GPL)
> スクリプト言語であること。
> 開発者が日本人であること。


もはや、特徴でもなんでもない罠
0007デフォルトの名無しさんNGNG
>>5
漏れもその口で、Air の README 読んだんだが、
全角英数字で萎えた。「tarボール」 は止めてほしい。
実装を試すのは言語仕様がもう少し固まってからかなあ。
00081NGNG
>>7
確かに。文書が日本語なのはいいが全角英数字なのは萎えた。

つーかマニュアル読んでも言語仕様が良くわからんよ。

0009デフォルトの名無しさんNGNG
注:HSPでつくりました。怒らないでね☆
0010デフォルトの名無しさんNGNG
このスレは数時間後に阿鼻叫喚スレとなる定め
0011デフォルトの名無しさんNGNG
airってエロゲみたいな名前だな
0012デフォルトの名無しさんNGNG
そうなの?
0013デフォルトの名無しさんNGNG
鳥の詩は良い曲だね
0014デフォルトの名無しさんNGNG
>>4
HTMLに埋め込めないPHP?
0015デフォルトの名無しさんNGNG
つか、awkと比べてどっちの方が優れてる?
0016デフォルトの名無しさんNGNG
スレタイは全角にすべきだった(w
0017デフォルトの名無しさんNGNG
>>14
言われてみれば確かに…似てるな
0018デフォルトの名無しさんNGNG
おれは乖離剣エアのほうかと思った。
で、本当の由来は何なの?
0019デフォルトの名無しさんNGNG
透明少女
0020デフォルトの名無しさんNGNG
ナンバーガール
0021デフォルトの名無しさんNGNG
「これが私にとっては自然」 というコメントはなかなか考えさせられるな。
生産性が高いからとか、既に作られているからとか、そういう理由は言語を使う理由にならないっていう
人もいるんだろうね。生産性高いことだけに執着しているならプログラマを仕事していないだろうしな。
0022デフォルトの名無しさんNGNG
Cから型宣言をとって、ハッシュテーブルなど基本的なデータ型を追加して、
GCもつけて...
AWKからフィルタに特化した部分を取り除いて、一般化した感じかな。
0023デフォルトの名無しさんNGNG
Perlの便利さを認めながら、
ベル研の雰囲気も残したいというのは矛盾だな。
RubyやPythonのような見通しがないと、
実用機能を整備してくうちに、Perl並みにぐちゃぐちゃになること必至。
0024デフォルトの名無しさんNGNG
>>21
matz も同じようなこと言ってると思うが。
0025デフォルトの名無しさんNGNG
>>24
だからなんだ?
0026デフォルトの名無しさんNGNG
将来はそれぞれ自作の俺言語を使うようになるのかもしれんね。
0027デフォルトの名無しさんNGNG
みんなもう作ってるんじゃないかな。
LISP もどきとか、C もどきとかさ。
0028デフォルトの名無しさんNGNG
そもそもPerlは、高速なAWKとして使われて広まっていったからね。
機能としてはAWKで間に合う処理は多いと思う。
もしgawkの実装がもっとマシだったら、
AWKで無理やり書かれた長大スクリプトが
多く出回っていたことだろう。
0029デフォルトの名無しさんNGNG
>>28
そしてフィルタ以外の用途が増えすぎたために
BEGIN { ... } のエイリアスとして
MAIN { ... } なんてのができたりしてね♪
0030名無しさん@EmacsNGNG
でもこれけっこういいかも。

オブジェクト指向がどうのとか言語設計がどうのとかよりも、
現場の人がCと同じような構文でスッと使えるようなとこが魅力。

すでにスクリプト言語が自由に操れる人にはいらないかもしれないけど、
Cに慣れててちょっとスクリプティングしたい人にはいいんじゃない?
0031デフォルトの名無しさんNGNG
C ライクなら pike があるしねえ。
0032デフォルトの名無しさんNGNG
pikeってダイナミックな型システムなの? つまり型宣言のマンドクサさを除いてある?
0033デフォルトの名無しさんNGNG
http://ex2.2ch.net/test/read.cgi/net/1078905995/977
> http://pc2.2ch.net/test/read.cgi/tech/1079015351/30
> ( ´,_ゝ`) プッ
> もしかしてAlgol系の文法を踏襲する言語をCしか知らない?
0034デフォルトの名無しさんNGNG
>>32
変数の型宣言は必須。ただobject型に関しては
Stdio.File f = Image.Image();
みたいなわけの分からん式が通る、つーかクラス型で宣言した変数は単なるobject型として
認識されてるらしい。

一応日本語は通るが、正規表現周りがかなり貧弱(一応開発版にはPCREとか入ってるが、
後方参照ナニソレみたいな)なんで普通のスクリプト処理系とはかなり勝手が違う。
0035デフォルトの名無しさんNGNG
>>34 情報サンクス
0036デフォルトの名無しさんNGNG
だめだこりゃ
0037デフォルトの名無しさんNGNG
夏はどこまでも続いていく
彼女がまつその大気の下で
0038デフォルトの名無しさんNGNG
↑更新日とスレの廃れ具合からして作者
0039デフォルトの名無しさんNGNG
override
0040デフォルトの名無しさんNGNG
もう、ゴールしてもいいよね?
0041デフォルトの名無しさんNGNG
さっそくりんくがはられてますた。
0042デフォルトの名無しさんNGNG
■ このスレッドは過去ログ倉庫に格納されています