2007年05月23日 05:00 [Edit]

君は新言語xtalを知っているか?

Matzさんでさえ言及した様子がないこのxtalですが、なかなかどうして面白い。for loopの後ろにelseが書けたり、Fiberを持っていたり...callee()で無名再帰関数も書けたり...そうそそう、...といえば、可変引数の引数は、...という配列に入って、...[0]がその最初の要素というのも楽しいですね。

XTALというとOSの方を思い出してしまいますが、組み込み向けという点で共通しているかも。偶然の一致でしょうか。

ソースを見て、最初WindowsでVCな人しか対象にしていないのかと思ってorzとなりかけましたが、たった二カ所の変更で、Mac OS XでもFreeBSDでも動くようになりました。

  1. allocator.h中の#include <malloc.h>#ifdef HAS_MALLOC_H /*...*/ #endifでラップ
  2. main.cpp中の#include <windows.h>#ifdef HAS_WINDOWS_H /*...*/ #endifでラップ

あと、gccでないとg++でコンパイルしないとリンクに失敗するのと、エラーメッセージが日本語、それもSJISというのを除けば、ふつうにMac OS XでもFreeBSDでも動きました。

ソースコードをSJIS/CRLFからUTF-8/LFにして、make一発できるようにしたものを以下に転がしておきます。Windows使いでない方も是非遊んでみて下さい。

それにしても、言語実装なのに

% g++ -o xtal src/main.cpp -O2 -lstdc++

と一行コンパイルなのにはちょっとたまげました。でも、FreeBSDでbinaryが512KBでこれだけいろいろなことができるというのは脱帽もの。Luaより気に入りました。localいらないし、endでなくて}だし....

最近のLightweightというにはあまりに広大なスクリプト言語に慣れた後に見ると、ほんと新鮮です。Tatsunori Ishibashiさん、ありがとうございます。

Dan the Langmania


この記事へのトラックバックURL

この記事へのトラックバック
Twitterをぼげぇ〜と眺めていて発見。 LOLCODE Matzさんでさえ言及した様子がないこのLOLCODEですが、なかなかどうして面白い……って、小飼弾さんの「404 Blog Not Found:君は新言語xtalを知っているか?」をまともにパロる力量に、残念ながら全くもって欠けているので、こ
[ネット文化]君は新言語LOLCODEを知っているか?【antipop】at 2007年05月30日 23:26
弾さんによる 「Matzさんでさえ言及した様子がない」新言語Xtalの紹介。 うーむ、実はこっそりブログでの開発状況を観察し 密かに愛でていたのに。 個人的な経験から言えば、言語仕様がある程度安定するまでは 人の意見を聞かず、自分が「これ」と思うところを追求した方...
404 Blog Not Found:君は新言語xtalを知っているか? 【Matzにっき】at 2007年05月26日 01:55
弾さんの「君は新言語xtalを知っているか?」を読んで、なんとなく、xtalを試...
xtalのRPMを作ってみた【インプリ】at 2007年05月25日 03:40
弾さんの「君は新言語xtalを知っているか?」を読んで、なんとなく、xtalを試...
xtalのRPMを作ってみた【インプリ】at 2007年05月25日 03:39
この記事へのコメント
tmizさん、
ファイルがちょっと破損していたようです。作り直しておきました。
Dan the Langmania
Posted by at 2007年05月25日 02:03
伸張に失敗しますが、なぜでしょうかねぇ?
Posted by tmiz at 2007年05月25日 01:05
> あと、gccでないとg++でコンパイルしないと
s/でないと/ではなく/ ?
Posted by FT at 2007年05月23日 13:41
もしかして s/そうそそう/そうそう/;でしょうか。
Posted by G at 2007年05月23日 08:49