[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:25733] 日本語プログラミング (Re: ワープロ)



こんぱんは、立山@debian初心者です。

 一月ほど前から、安く(2800円)手に入れたLANカード付きTOWNS MXに
potato-townsを入れてルータ兼UNIXの使へるサブマシンとしてUNIXの
お勉強用や、TeXソースのコンパイルマシンとかに使つたりしてゐます。
#主にWin95から TeraTerm(+ssh)経由で、で使ってます。

ふと、気になる話題を見掛けたので……横から失礼します。

On Mon, 4 Dec 2000 17:02:59 +0900
Tomohiro KUBOTA <tkubota@xxxxxxxxxxx> wrote:
> # 自然言語プログラミングってありませんでしたっけ?
> # もし一般の自然言語だとアイマイすぎてだめなら、たとえば
> # 法律用語プログラミングなんて、できないかな? (妄想モード)

 自然言語とはいきませんが、日本語プログラミング言語Mindといふのものが
ありますよ。
 UNIX版のMindコンパイラはGPLのもとにフリーソフトとして公開されてゐる
ので、Linux上で動かせます。

------------
挨拶とは
        「こんにちは」と 一行表示すること。

メインとは
        挨拶すること。
-------------

 こんな感じでプログラムできます(ちなみに上のプログラムはうちのpoteto
環境でコンパイル実験済なので、本当にそのままコンパイル&実行できます)
 上の例だけだと、なんかC言語を日本語化したもののやうに感じるかもしれ
ませんが、Mindの祖先はCではなくForthでして、関数型ではなくスタック型
言語です。
 日本語を扱ふための特別な配慮がされていて、例えば

        一行読出しする
        一行読み出しする
        一行だけ読み出しする
        一行読み出ししちゃうんだよ

 と、上記はコンパイラからは全く同じ単語として扱われます。
 その秘密は、単語を判定するときに漢字やカタカナに挟まれたひらがなや、
最後の送り仮名は無視するといふ大胆かつ画期的な発想によるものです。

 さらに半角も全角も大文字も小文字も同一視するとか、「1バイト」とか
「10桁」とかいつた数値で始まる単語の場合数字の後は単位記号として無視し、
単なる数値と同じ扱いにするなど、自然言語に近い表記でプログラムを書ける
やうにするための工夫で一杯の言語です。

 こんな言語はいかがでせう?
 かういふ日本人には判りやすい言語なら文系の人でも結構使ひやすいんぢや
ないかと思ふのですが。
 私が個人で使ふための通信ログの整理ツールとか、HTMLのタグカッターなど、
自分で使用するためのツールを作るときの開発言語は専らこれです。

 ちなみに私はMS-DOS版の頃からのMindファンでして、MS-DOS版もWindows版も
製品版を正規に購入して持つてゐます。Linuxマシン環境を用意した理由の一つ
はUNIX版Mindを使つてみたかつたからだつたりします(こんなの私だけ???)

 Kondaraだとディトリビューションに収録されているけど、残念ながらdebian
のディストリビューションには入つてないみたいですね(^^;)。
 ソースはGPLとともに公開されてるんだし…、debianにもパッケージとして
収録されたらいいのになあ……。

#(え? 自分でメンテナになれ? いやその…今はまだ無理です#今日から本
#読んだりボリシーマニュアルとかメンテナ入門とか読んだりして、カスタムdeb
#ファイル作つてみたりしてますが、圧倒的にスキルが足りない(^^;))
# それに英語とか苦手で英文の説明文書とかは書けないし…
# 英語が好きでないから日本語プログラミング言語使つてるくらゐだし…

 なお、ソースは開発元のスクリプツ・ラボ http://www.scripts-lab.co.jp/
のサイトから入手できます。
(開発会社が変わつたため、しばらくの間Kondaraのミラーサイトあたからソース
を取ってくるしかありませんでしたが、やつと新会社の方でもダウンロードサー
ビスが再開されたやうです)

> > あと、コンパイル時のエラーメッセージをみていやがる人が
> > 多いようです。
> 
> それはそんな気がします。「エラー」イコール「怒られてる」と
> 思ってびびってしまう人って多いですね。間違ってるところを
> 教えてくれてるんだと思えば平気なのに。というか、TeX では
> (ワープロと違って) そもそも間違った表記ができてしまうところに
> とっつきにくさがあるのだ、と言われればその通りかもしれませんが。

 TeXは前から興味があつたし、ドキュメントがTeXで書かれているソフトとか
あつたので(例えばcannaとか)、debian導入後TeX環境も作りました。
 debianでの印刷環境がいまだ整つてないので、Windows側にdvioutやフォント
等を入れて、dvi作るのはLinux、印刷するのはWindowsと使い分けてます。
 じつくり読める紙マニュアルが欲しかつたので、この一ヶ月でcannaだの
emacsだの、TexinfoだのGNUコーディングスタンダードだの、以前から興味を
持つてゐたものについて、ジックリ読める紙ドキュメントにするべくTeXや
Texinfo形式のマニュアルをコンパイルして印刷しまくりました(^^;)
(1000ページ以上になつた)

 しかし前から思つてたけど、TeXつて完全にプログラミング言語ですよね、これ。
 例えばTeXで書いたドキュメントを印刷しようとしたとして、コンパイルして
エラーが出たら、ワープロしか使つたことないやうな一般人ではまずパニック
になるでせう。

 まがりなりにも理系の学校出てコンピュータ会社でソフト開発の仕事してた
私でも、パニックになりそうになるもの(^^;)
 一応昔取った杵柄といふことで、エラーが出たらメッセージ読んで、原因を
探して対処するくらゐは出来ますが、さういふことが出来て、それを楽しめる
やうでないとつらいんぢやないかなあとか思つたりします(ちなみに私はさう
いふデバッグ作業とかするのも好きなんで全然苦にはならないですし、TeXは
いいなあ、凄いなあと、かなり気に入つてますが)。
 一般人はさういふことは楽しめないと思ふのは偏見かな?

 それから標準スタイルに満足できないときのスタイル変更とかしようとする
と、やはりTeXは取つつきにくいですね。
 本当に本物のプログラミングになつてきますし(^^;)。

 既に書かれた文書を印刷するだけでなく、自分が昔書いた小説モドキをTeX化
して印刷してみたいなと思つて、現在色々テスト文書作つてはコンパイルしたり
しながらスタイルファイルの勉強中です。
 実際使つてみると、TeXつて理系の人が作つた論文等の作成のためのソフト
だなあといふのが実感されます。
 縦書き機能は不具合らしきものがあるし、振りがな入れるにはマクロが必要だし、
小説を組版するのにはあまり向いてないみたいですね。
 例えば、いはゆる小説などで一般的なカギ括弧で書かれた台詞の多い文章を
組版しようとすると、かなり気を付けて\par\noindentや\\を使い分けながら
入れないと、カギ括弧の出力位置がガタガタになるとか…。
#色々便利なマクロが公開されてますから、かなりの部分はマクロを組み込んで
#拡張すれば対処できますが、『マクロで拡張』といふ行為じたいがもう、文系
#向きではないと思ひます。それにマクロを探すことも大変だし(^^;)

 (La)TeXでは、段落開始のインデントとかは自動で入れてくれますよね。
あの思想からすれば、かういふカギ括弧の位置調整とは禁則処理と一緒で、
大部分は自動で(もしくはスタイル指定一発で簡単に)制御できて欲しい
ですね。もしも私の認識不足で、かういふことも簡単に制御できる方法がある
のだつたらごめんなさい。

 TeXではありませんが、Linuxの文書作成環境といふことだと、日本語入力の
問題は大きいですね。この関係はやはり弱いなと思ひます(最近話題になつてた
Linux版WXGつて使ひやすいのかな? 今度試してみよう)。
 Win環境からTerTerm通して使へば、慣れ親しんだ日本語入力環境のまま、
Linuxで日本語の入つた文書を作れるので、当分これでいかうかなと思つて
ます(え? 邪道?(^^;))。

★------------------------------------------------------------------★
 FROM:立山隆現(TATEYAMA Takaaki) 
 http://www.interq.or.jp/green/sta/bekkan/
★------------------------------------------------------------------★