なでしことは何か


 「なでしこ」とは、「ひまわり」の次世代を担う、高速・軽量な日本語プログラミング言語です。

なでしこが目指すもの


日本語プログラミング言語「なでしこ」は、「ひまわり2」として開発がスタートしました。

「ひまわり」で指摘された以下の問題点
・実行速度が遅い
・ラベルや関数は記述できるが、オブジェクト志向ではない
・句点や記号が多く、日本語的ではない
を改善すべく、言語仕様を1から見直しました。

結果として「ひまわり」との互換性がなくなったことを明確にするため
名称を「なでしこ」としましたが、上記問題点を解決することができました。

以下は、なでしこ開発に当たっての目標と、そのために行われた主な変更内容です。


目標1:高速化 … ひまわりの10倍以上


・プログラムをあらかじめ構文木解析して、実行時の再評価ロスを排除
・データの型を明確にし、内部形式はバイナリで保持。型変換ロスを排除
・DelphiのVCL依存の実装をやめ、極力WindowsAPIを直接呼び出すことより、大幅な軽量化を実現


目標2:オブジェクト志向


・「グループ」の導入。「構造体」よりも強力で「クラス」ほど難解ではない、バランスの良い実装
・グループミックスによる、継承とオーバロード
・セッター・ゲッター関数の記述により、プロパティを実現


目標3:日本語らしい表記と、よりわかりやすい表記の共存


・構文解析を助詞で区切る方式に変更し、過剰だった句読点を除去可能
・ブロックの記述をインデントで表現することにより、カッコ記号を除去
・配列の参照は、より一般的な [ ]角カッコに変更
・ハッシュの参照は、"@"で表現 ("の"に似ているから)
・文字列のエスケープ文字"\"を廃止して、{ }波カッコに統一
(ファイルのパス文字列を扱う際に苦労したため)