2011年10月1期プログラム日本語プログラミング言語「プロデル」
TOP カテ一覧 スレ一覧 削除依頼 ▼
・ 次のスレ
Perlについての質問箱 49箱目 【SICP】計算機プログラムの構造と解釈 Part2 新しいプログラム言語作る〜4カ年計画 データベースプログラミング全般スレ
日本語プログラミング言語「プロデル」
1 :11/11/29 〜 最終レス :12/01/11 日本語プログラミング言語「プロデル」について語りましょう。 公式サイト: http://rdr.utopiat.net/index.html 日本語プログラミング言語「TTSneo」(前身): http://tts.utopiat.net/
2 : プロデルの特徴を簡単に 【言語について】 ・日本語を使ったプログラミング ・オブジェクト指向、動的または静的型付け 【プロデル付属の開発環境について】 ・Visual Studioのようなフォームデザイナを搭載 ・構文色づけ ・デバッグ機能 など…
3 : 【命令文】 結果は、「プロデル」から2文字先頭から取り出したもの 結果を表示 ーープロと表示される というプログラムがあり、 「プロデル」から2文字先頭から取り出したもの という命令文について、 ・「プロデル」から2文字先頭から … 手順(メソッド)の引数 ・取り出したもの … 文字列型の手順 の2つに分けることができる。 【手順の引数】 手順の引数は、値と助詞(国語の文法の助詞とは異なる)のペアまたは形式補語(?)の集まり。 ・「プロデル」 → 値 から → 助詞 ・「2」 → 値 文字 → 助詞 ・先頭から → 形式補語 で表される。
4 : まずひとつ言えることは、英語のプログラミング言語と思われてるものは実は英語ではない。 英文法に従っていると言えるかもしれないのはCOBOLぐらいだろう。 それでもちゃんとした英文法ではない。 ほとんどの言語では、英語は英単語としてしか使っていない。 単なるキーワードだ。特に関数型言語なんか英語と言うより数式に近い。 そう、プログラミング言語に、英文法は必要とされてないんだ。 必要なのは、式と英単語のみ。 それに気づくと、日本語プログラミング言語に必要なものがなにか分かるだろう? そう、日本語としての文法はいらない。単語だけあればいい。 だから日本語のプログラミング言語なんてのは必要とされていない。 キーワード(変数名や関数名)に日本語が使えればいいだけ。 あと、ifを「もし」 forを「繰り返す」などのような単純な単語置き換えスクリプトがあれば良い
5 : 日本語プログラム言語が出るたびに思うんだが わざわざ2byte文字打ち込んで変換するとか効率悪すぎて意味不明
6 : >>4 キーワードが全部日本語に変わったC言語とか誰得だよ。 >>5 確かに面倒。 ぶっちゃけ、日本語プログラミング言語は実用には向いてない。 ただ、日本語プログラミング言語には独特のおもしろさとか難しさがあると思う。
7 : >>3 の続き プロデルは、命令文を見ただけでは操作対象のインスタンスが分からないことがある。 例えば、Javaでは、 x.method(); という文があれば、xは操作対象のインスタンスであることは一目瞭然だが、 プロデルはそうはいかない。 「プロデル」から2文字先頭から取り出したもの という命令文では、助詞「から」に連接している値「プロデル」が操作対象のインスタンスである。 しかし、 「プロデル」に「日本語プログラミング言語」を先頭に加える という命令文では、助詞「に」に連接している値「プロデル」が操作対象のインスタンスとなる。 プロデルではメソッドの定義によって、レシーバとなる引数が変わってくるのである。 プログラムを読むときは日本語で書かれているので、レシーバーは一目瞭然で分かると思うが、 プログラムを書くときには非常に困る。
8 : このスレッドは天才pンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所
9 : Debian GNU/LinuxでもプロデルのGUI開発環境をインストールして動かせるのでしょうか。
10 : >>4-6 日本人プログラマのために漢字など日本語単語を使うためのメリットは パッと見ただけで脳が瞬時にプログラムの中身を判断できることでしょうか。 漢字は一般に視覚判断の点で優れた文字だとされていますので、 例えば2ちゃんねるのスレッド一覧を参照して特定のキーワードを見つける際に カナやラテン文字の場合よりも脳が検索する時間が速いと言われています。 漢字、そしてカナよりその瞬間認知能力の点においては劣りはしますが、 「ローマ字プログラミング言語」というのがあったら良いように思います。 ローマ字のメリットはカナ同様に発音とスペルが基本的に1対1の関係にあり、 漢字や英語のスペルを覚える必要はありません。 つまり、フロートというキーワードの発音さえ覚えていれば綴りはfurootであり、 floatというスペルを別個に記憶する無駄はなくなります。
11 : 他の日本語プログラミング言語に対するこれの利点って何?
12 : ちゃんとサーベイするような奴が作ると思って?
13 : >>10 はい。 だから結論は キーワードを置き換えるだけで十分ってことです。
14 : ローマ字とか複数種類があるだろ\・・
15 : 代入記号から関係演算子などまで日本語化しちゃったプログラミング言語があったような。
16 : >>11 プロデルはC#で開発されてるから、 .netの恩恵を受けることができる。 GUIとか特に。 .netインストールしないと駄目とか そういうのはあるけど、Vista以降は標準で入っているから あまり問題にはならない あとプロデルは他の日本語プログラミング言語に比べて、 日本語らしさと記述性のバランスがとれていること。 なでしこは記号が多すぎる
17 : >>9 残念ながらWindows以外は対応していない 将来的に対応するかもしれん http://rdr.utopiat.net/faq.html
18 : ていうか Mono ベースに移行するところからだろうな やれるならだけど
19 : DirectXには対応していますか?
20 : >>19 対応していないよ DirectXで何するのか分からんけど、 3DCG使ったようなゲームだと速度が要求されるから いずれにしてもプロデルだとちょっと厳しいかもしれん。
21 : プロデルでのダックタイピングはこんな感じ。 (アヒルを作ったもの)を鳴かせる (猫を作ったもの)を鳴かせる [動物]を、鳴かせる手順 動物が鳴く 終わり アヒルとは [自分]が、鳴く手順 「がー」を表示 終わり 終わり 猫とは [自分]が、鳴く手順 「にゃー」を表示 終わり 終わり
22 : >>21 インデントが消えてたんでやり直し (アヒルを作ったもの)を鳴かせる (猫を作ったもの)を鳴かせる [動物]を、鳴かせる手順 動物が鳴く 終わり アヒルとは [自分]が、鳴く手順 「がー」を表示 終わり 終わり 猫とは [自分]が、鳴く手順 「にゃー」を表示 終わり 終わり
23 : やっぱ自然言語をプログラム言語にするとダメだわw 猫とは [自分]が、鳴く手順 「にゃー」を表示 終わり 終わり これに、引数として「相手」を追加してみ。
24 : >>23 >これに、引数として「相手」を追加してみ。 すまない、これの意味が分からない
25 : メソッドには引数があるもんだろ。
26 : 猫とは [自分]が、[相手]に、鳴く手順 「にゃー」を表示 終わり 終わり >>24 の通りにするとこういうことになるけど、 こういうこと?
27 : さて、ここまで来たら最後行こうか。実用的な例。 HTMLの文法をチェックするクラスがチェックするメソッドを作る場合はどう書くか? 引数としてHTMLとチェック対象のバージョン(HTML4とかHTML5とか)を引数にする。 戻り値はtrueを返せばOK、falseならNG Java(風)に書くとまあこんな感じだ。 class HTMLValidator { bool check(String html, String version) { 略 return true; } } 日本語という言語の制限(日本語として自然な文章でなければならない)に引っ張られるだけだろう?
28 : >>27 ツールは、HTML検証ツールを作ったもの 結果は、ツールが「<html>...</html>」を「HTML5」としてチェックしたもの 結果を表示 HTML検証ツールとは [自分]が、[HTML文書]を、[バージョン]として、チェックする手順:真偽値 ーー実装省略(コメント) 真を返す 終わり 終わり こんな感じかね
29 : > 猫とは > [自分]が、[相手]に、鳴く手順 > 「にゃー」を表示 > 終わり > 終わり なんでこっちでは、「相手”に”」 なのに、下では ”を” とか ”として” に変わるんだよ?w > HTML検証ツールとは > [自分]が、[HTML文書]を、[バージョン]として、チェックする手順:真偽値 > ーー実装省略(コメント) > 真を返す > 終わり > 終わり HTML検証ツールとは [自分]が、[HTML文書]に、[バージョン]に、チェックする手順:真偽値 ーー実装省略(コメント) 真を返す 終わり 終わり が正しいだろ。
30 : >>10 漢字ひらがな混じりの日本語が英単語よりも認識速度の点で速い(速読などに向いている)っていうのは どっかの教授の話として聞いた気がするんでそれはよいとして、 たとえばCやC++も基本コード文字セット以外をプログラミングに使っていいことになってるし(実装依存)、 javaはUnicode文字はすべて使える仕様になってる。なので>>4 の言うとおり、 ステートメントとスタンダードライブラリを日本語の単語に置き換えるスクリプトなりマクロなりtypedefなりがあれば 「認識速度のために日本語を使う」はすぐ実現で来てしまう。 そうではなく、あえて日本語のプログラミング言語を作るとしたら、 それ以外の何かメリットが必要なんじゃないだろうか…
31 : >>29 >なんでこっちでは、「相手”に”」 なのに、下では ”を” とか ”として” に変わるんだよ?w なんでって日本語としておかしいだろ 別に引数だから「に」をつけるとかそう言うのではないよ 仕様的に引数に同じ助詞を2回以上つけることはできない。 検証ツールが、「<html>...</html>」に「HTML5」にチェックする これはどう考えても変だろ。 まぁたぶん、 >日本語という言語の制限(日本語として自然な文章でなければならない)に引っ張られるだけだろう? ということが言いたかっただけだろうけど
32 : >>31 じゃあ、日本語としておかしいからという理由で 助詞「に」を使っても「を」使っても「として」を使っても良い言語なのか? 仕様的に引数に同じ助詞を2回以上つけることはできない。 というのは、 日本語としての制限か? この言語では、プログラムが正しく動くよりも 日本語として正しいことが重視される言語というわけか? 何のために? まさに、日本語という言語に足を引っ張られた 使えない言語というわけだw
33 : あともう一つ聞き忘れた。 > HTML検証ツールとは > [自分]が、[HTML文書]を、[バージョン]として、チェックする手順:真偽値 > ーー実装省略(コメント) > 真を返す > 終わり > 終わり この関数を呼び出すところはどう書くんだ?
34 : >>30 CとかJavaで書かれたプログラムを読むとき、 頭の中でいったん日本語にかみ砕いたりしないですかね? if (a < 10) というような場合、「もしaが10より小さいなら」というような感じで。 この日本語にかみ砕くという工程をわざわざするぐらいなら、 日本語(っぽく)で書いてしまえ、というわけですよ。
35 : という訳で>>4 に戻る。 普通のプログラミング言語の英語が嫌なら その部分を日本語にすれば良い。 もともとプログラミング言語には、英文法は含まれていないので、 単語を置き換えるだけで良い。新たに日本語の文法を入れる必要はない 種類 HTML検証ツール { 真偽値 検査(文字型 HTML文書, 文字型 バージョン) { 返却 真 } } 日本語プログラミング言語なら、これでいいだろ?
36 : >>34 > 頭の中でいったん日本語にかみ砕いたりしないですかね? 殆どの場合しないな。 お前だってifぐらいだろ? classとかfunctionとかforとか いちいち日本語に噛み砕くか?
37 : >>32 >じゃあ、日本語としておかしいからという理由で >助詞「に」を使っても「を」使っても「として」を使っても良い言語なのか? かまわないよ。 >仕様的に引数に同じ助詞を2回以上つけることはできない。 というのは、 >日本語としての制限か? これはプロデルの仕様上の制限。 どちらにしても、同じ助詞を2回以上続けるのは日本語としても、あんまりきれいじゃない気がする。 >この言語では、プログラムが正しく動くよりも >日本語として正しいことが重視される言語というわけか? まさかw あくまでプログラミング言語だから、正しく動作しなくてはならないよ。 ただ、日本語プログラミング言語だから、日本語としてわかりやすく書こうというわけ。 日常で使っている言語をプログラミング言語の文法として使うから、 [自分]が、[HTML文書]に、[バージョン]に、チェックする手順:真偽値 こんな定義されたら、分かりにくいしそれこそバグの元。
38 : >>33 結果は、ツールが「<html>...</html>」を「HTML5」としてチェックしたもの こんな感じ呼び出す。 ○○は、×× で変数代入。
39 : >>34 今、当該ページでリファレンスを読んでるところなんで とんちんかんなレスだったら申し訳ないんだけど、 個人的にはアセンブラみたいな感じで CとかC++みたいな言語と瞬時に切り替えながら打ち込めるエディタがあったら 面白いし、初心者にはありがたい言語になるかも。
40 : >>39 もうちょっと詳しく
41 : >>40 お前に期待はしてない。
42 : プロデルについてまったり語りましょう 日本語プログラミング言語「プロデル」について 広く知ってもらえたらと思ってスレをたてましたんで 別にプロデルが優れてるとか、 日本語プログラミング言語が優れてるとか そういうことが言いたい(議論したい)わけではありません。 と言いつつ、 スルーすればいいものを真に受けて 議論のような方向性にさせてしまいましたが。
43 : 最初から日本語プログラミング言語が優れているかどうかなんて話はしてないですよ。 そんなもの、教育用としても使いものにならないのは 議論するまでもなくわかりきっていることですから。 英語もローマ字もろくに知らない小学生の自分がプログラミングできましたからね。 やる気さえあれば日本語である必要はまったくありません。 読めなくても一連の文字の並びを覚えてプログラミングはできるのです。 あなたは広く知ってもらうためにスレを立てたようですが、 私は日本語プログラミング言語というアイデアはいかに 馬鹿げているかを示すスレにここをしようと思ってるだけです。 2ちゃんねるはあなたのものではありません。あなたの好き勝手には出来ません。 私はあなたがなにを言うが、日本語プログラミング言語をという アイデアを馬鹿にするスレにするだけです。もちろんプロデル?専用ではありません。 日本語プログラミング言語全体の話です。ちなみにぷろでるとかの仕様は見ても見る気もありません。
44 : プロデルは全く知られていない言語と言っても過言ではないので プロデルの知名度を上げるために 日本語プログラミング言語「プロデル」が持つ特徴や プログラムなどを引き続き投下したいと思います。 プロデルについて質問があれば答えます ただ、日本語プログラミング言語の必要性とか そういう不毛な議論は控えるようにお願いします。
45 : > プロデルについて質問があれば答えます ありません。 そんなものやるくらいなら、 他の言語を勉強します。 もっと知るべき言語は他に沢山あります。
46 : >>43 >私は日本語プログラミング言語というアイデアはいかに >馬鹿げているかを示すスレにここをしようと思ってるだけです。 ここであなたの主義主張を示されても困りますよ。 新しくスレ立ててそこで主義主張をされたらどうですか。 >2ちゃんねるはあなたのものではありません。あなたの好き勝手には出来ません。 このスレはあなたの主義主張をする場ではありません。
47 : >>46 いいえ、ここは私が自由に書きこむスレですw いくら言っても、私は止められません。 さあ、勝負だ。
48 : 勝手にやればいいけど水遁されるぞ。ほどほどになw
49 : 言われなくても勝手にするしw それに俺は正義心でやってるんだからね。 プログラミングに興味が出てきた人を ゴミ言語で時間を無駄にするのは可哀想だろ。 一流の選手は、小さい頃から一流の道具を使うものだ。 最初にゴミを使うと、ゴミ基準でしか物事を見れなくなる。
50 : たぶん49に必要なのはプロデルじゃなくてフロハイル
51 : 他にも日本語プログラミング言語がいくつかありますが、 プロデル独自の特徴は何かあるのでしょうか。
52 : このスレ立てた>>1 って作者本人だろ
53 : 宣伝するなって感じだよなw
54 : 粘着する動機が思いつかないなー
55 : >>51 他の日本語プログラミング言語ほとんど触ったことないから、 参考にならんかもしれんけど、 使えるGUI部品が多いから、 ウィンドウ使ったアプリケーションを作るのに長けているところかな。 フォームデザイナはVisual Studioまんま。
56 : >>52 作者ではないよ
57 : 「なでしこ」とも違うのか。
58 : 別にこのスレ内でやる分には構わないのでは
59 : >>57 なでしこは定型処理の簡略化とか そういうマクロ的な使い方に特化しているんじゃないかな プロデルもそういうことができるけど プロデルは汎用のソフトウェア開発環境として 作られている気がする
60 : 日本語でプログラムを書く最大の利点は可読性を高くすることで バグの発生を減らすことができることだ。 しかしプロデルのような言語はC++やJavaのような実績のある環境より ずっと不安定だしデバッグ環境が酷い。 文法も酷いので簡潔にわかりやすく表現力するような工夫もできない。 バグが減るどころかむしろ増えてしまうので それじゃあ一体何のために日本語でやっているのかわからない。 たぶん>>1 はまともにプログラミングができなくて 短いプログラムしか書いたことがないのだろう。 それで良い言語だと錯覚しているのに違いない。 本当に汎用だというなら1万行クラスのプログラムを書いてごらん。 バグだらけで遅ぉいゴミソフトができるから。
61 : できたばかりの言語にそれはなんとも大人げない
62 : 要するに汎用じゃなくて短いスクリプト専用と言えってこと。 まだ他の言語と競争できるようなレベルじゃないし、業務に使えるレベルでもない。
63 : 業務で使うんなら設計書をそのまま実行できて欲しいな。でないと日本語の意味が無い
64 : もう消えてるじゃん・・・
65 : ttp://www.entis.jp/doc/japanese/
66 : ERIフォーマットの人か
67 : マイナーだけど、buglessって言語思い出した
68 : あとこんなのもある ttp://id.nii.ac.jp/1001/00031273/
69 : 俺は実は>>1 の議論の態度にすごく感心している。 オープンマインドだし相手を攻撃するようなところもまったくないし。 ふつうはこうはできない。 ブロデル自体は知らんが、この先よい人生を祈っている。
70 : 態度で良いプロダクトができるなら苦労しねーや
71 : 態度の良くないと良いものはできないのはおもしろい事実。 態度が苦労を要するんだよ。
72 : LinuxもOpenBSDもGCCもWindowsも良くない、ということになるな。 単にお前が、「作者の態度が良くない」=「良いものじゃない」って決めつけてるだけじゃね? なんの根拠もなく、ただ単に作者の態度で成果物を評価してるだけ、っていう。 まるで小学校で、努力だけが評価の対象であるがごとくw
73 : 70-73みたいなやりとりを(俺のも含めて)ふつうやってしまうんだ。 あなたも自分の書いたものを読み返してみればよい。 このへんでやめましょう。>>1 に迷惑だ。
74 :12/01/11 あっ、みなさん脇道へそらしてスマン。 >>72 も期待してるよ。
TOP カテ一覧 スレ一覧 削除依頼 ▲
・ 次のスレ
Perlについての質問箱 49箱目 【SICP】計算機プログラムの構造と解釈 Part2 新しいプログラム言語作る〜4カ年計画 データベースプログラミング全般スレ