次世代が造った言語 blawn
■ このスレッドは過去ログ倉庫に格納されています
作品名 Blawn
https://u22procon.com/result/
静的型付けコンパイル型言語Blawn。
既存の言語の仕様や文化に囚われず、実効速度などの性能の高さもふくめた
「人間にとっての扱いやすさ」を最重要視し開発。字句解析器にflex、構文解析器にbison、バックエンドにLLVMを利用。
1パースで構文解析が済むように実装し、コンパイル速度の改善を図っている。また、全ての関数及びクラスがジェネリックで、
これによって記述の簡潔さと認知負荷の低さ、さらには静的解析による実行速度の速さを担保している。 中学生が夏休みの自由研究で作った工作のスレを立てたやつがいるってマジ? わりと真面目に次世代が造った新言語を検討するスレです
忌憚の無い意見をどうぞ
https://github.com/Naotonosato/Blawn/blob/master/sample/list.blawn
void Blawn::Driver::parse_helper(std::istream &stream) {
// delete (scanner);
auto new_scanner = new Blawn::Scanner(&stream, this);
// delete (parser);
auto new_parser = new Blawn::Parser(*new_scanner, *this);
const int accept(0);
if (new_parser->parse() != accept) {
std::cerr << "syntax error" << std::endl;
/*<< "\033[38;2;0;0;255m"
<< "YOU LOSE\033[0m\n" << "構文解析器の勝ち!\n"
<< "何で負けたか、明日まで考えといてください。\n"
<<"そしたら何かが見えてくるはずです。\n"
<< "ほな、いただきます!!\n";
*/
}
return;
} 俺なんかJavascriptを劣化させた言語を作るのに半年もかかったのに。 実力のある若い人が出てくるのは将来が楽しみですね
この言語自体の未来はどうでもいいですが
そのうち自作言語の直せない欠陥が見えてきて新しく言語作りたくなるでしょ Rubyに似てるな
いちいち@はうざい
Pythonに似てるな
いちいちselfはうざい
DやGoより良かったら使う 型記述があるほうが好きなので、言語としてはあんまり評価しない。
作ったのは素直にすごいなーと思う。これ以上言語いらんけど。 >>22
(Matz)おまえが書いてくれても良いんだぜ 可読性は全然高くないね。@が邪魔くさいし、Cのように { } と ; を書かないのは
好みの問題だとしても、ifのブロックが関数呼び出しと同じ () なのはどう見ても
分かりにくい。
__blawn_memcpy__や__blawn_set_element__は組み込み関数を区別するための
命名法なんだろうが、冗長で可読性を低めるだけだし、舞台裏感があって美しくない。
self.allocated_size = self.allocated_size * 2 や sellf.size = self.size + 1 は
何で *= 2 や ++ にしないのか。
中学生であることを考慮してもゴミだな。 どう考えてもpythonのself.の方が邪魔だろ すまんパソコンの大先生はこのぐらいできなかったの? >>28
すげーな
中身を評価したら中学生にマウントかっけーか
このスレは何をするスレなんだ? まあ何もわからず若い奴をとことん持ち上げてから奈落の底まで落とすのがこの国の作法だからな。
ちゃんと中身見て批判する奴のがまともだわ。 @よりも__main__ってアンダーバー2つで囲うPythonが好きじゃない。 沖縄にダーサーアンダバーみたいな料理なかったっけ? >>26
>__blawn_memcpy__や__blawn_set_element__は組み込み関数を区別するための
>命名法なんだろうが、冗長で可読性を低めるだけだし、舞台裏感があって美しくない。
そこは問題にならない
そもそも list のサンプルソースなんだから舞台裏で当たり前
list を使ったメインのプログラムには
__blawn_memcpy__ も __blawn_set_element__ も出て来なくなっていればそれで良い
利用者側は list だけ利用するんだから
今後の built-in 機能の充実に期待
@ と self は糞だと思うが 取り得ず、言語の評価と、作った人間の評価は別
この歳で短期間で言語を作った人間の評価はすごい
言語としての評価は、よくある言語の一つやろ?
既存の言語のバリエーションでしかない 正直大したことねーよ
俺が中学生の頃にこんなコンテストあったら余裕で優勝してただろうし時代が良いだけ >>15
FFI か
megumin1
「あんまりこの段階で騒がないで」というのはその通りです。
実際これくらいの完成度の言語なら日本の学生からだけでも1年に100以上は作られていますよ。
騒ぐよりは自分でも一度言語をつくってみるといいと思います。
https://b.hatena.ne.jp/entry/s/qiita.com/blackenedgold/items/83526b329fe96ee781f5
正論だな >>40
なんだこいつ
中学生が作った言語なんだから無条件に褒めて持ち上げろや
技術の良し悪しなんて関係ねえ。もっと持ち上げて営業やコンサルに売り込め!!!!!!!!!!!!! if-elseのネスト禁止
forの中にif-else禁止
まさにbrainf*uck こんな言語に傾倒するくらいならRustにコミットしたほうが将来性あるで >>45
なんかそんなんだとqiitaにありそうな言語作ってみました
の記事に見えてくるw 確か90年代前半頃にRubyを初めて観たときの完成度はこれより高かった
これは中学生と言うことと日本製と言うこと以外に誉めるところは今のところ無い
10年後どうなってるかは知らんがな >>50
proc ファイルシステムは Linux だけなので なんでコンパイラ(トランスレータ?)ごときがproc使うんだ? 今の子供が羨ましいのは、そういう言語や情報が
ただで手に入るってところだな。
数万円かかる時点で中学生じゃそんなことできなかった。 このぐらいの品質の言語は毎年沢山作られているから、あまり騒ぐことじゃないんだよな
そのことを知らないピープルが天才!天才!と騒いでるだけで
ちょっとかわいそう 天才と囃し立てて言語に縛りつけないとすぐ夏休みの宿題で終わるぞ中学生にオレツエーさせとけ >>57
終わっていいじゃん
続ける価値のあるものとは思えん
スポンサーとチームなしに標準ライブラリを整備できるとでも? >>44
何も考えず持ち上げてるバカに聞かせてやりたいわ。
作った本人が一番、現状の問題を理解してるっていう。 まるで画期的なものを生み出したかのように伝える報道が悪いんだわ
中学生が作ったことがすごいのであって、言語自体はありふれたものだということがまったく伝わらない 画期的とは誰も言ってないじゃん
むしろ命名理由がすごくネタくさいw 好き嫌いはあって当然だが、自分が好きな風に作ったんだからそれはそれでよい事だろ。
評価すべきは7月からC++を始めて仕様を作り8月9月で仕上げてことにある。
お前らが中学3年生時にこんなことできたか?
LLVMを使いこなし、CFFIでCも呼び出せるようにしている所。2カ月でここまで作りこんだのは評価してよいだろ。 前からPythonはやってたんだろう
そうじゃなきゃこんなにするわけがない >>66
中学生がやったのがすごいなどということを褒め称えるのはプログラム板でやることではない
そんなことはニュース系の板でやれ
ここでやるのは表題のプログラミング言語の仕様や実装についての議論 Pythonもどきって一体なにを指して言ってんの??
この言語インデントに文法的な意味はないし…えーと… Pythonからindentの意味をなくして不便にしているだけ
中括弧もbegin endも無しでindent無意味にすりゃそうなるのは必然 すべての批判を嫉妬で躱すから子供を持ち上げる奴は嫌いなんだよ でもこれ賞に値するか?
短期間で作ったかどうかは関係ないっぽいし 作った子は超賢いんだろうけどさ
flex、bison使ってllvm使ってと作り方がまっとうすぎておもしろくない
単に大学の内容を先取で勉強して作りましたって感じ
言語デザインとしての発想は平凡だと思うが flexとbisonって
そこはspirit使っておけよ 審査員の大学の先生たちが嫉妬の裏返しで持ち上げた結果なんじゃないの?
技術力は落ちてももっと発想の豊かなものを選ぶべきだろ >>77 妬むな妬むな、お前が中3で作れたか?
当然寄せ集めじゃないと短期間では作れないのは当たり前。
そういう発想をして実現できたことが素晴らしいし、言語の発想もそこそこユニーク。 プログラム板のスレでは作ったのが誰かなんてどうでもいいだろ
実際に使う道具として議論するんだから中身だけが評価の対象 言語のユーザーにとっては
製作期間には何の価値もないし
製作者の年齢にも何の価値もない
それすらわからんてことはこのニュースを見て外から来た人なのかね >>83 アホか、言語の優秀性を語るスレじゃないだろうが、たかが中学生が2〜3ヶ月で作った練習台だぞ。
実用になるかどうかはさほど重要ではない。 発想を評価できるかどうかだよ。
何を大上段に構えて大人が喚いてるんだ? 恥ずかしいと思え。 発想ってなんのこと?なんかすごい発想でもあったの? >>84
天才中学生万歳したいだけならマ板に行けってことだよ
ここはそういう板じゃない 言語としては微妙だよね
ifとwhileのネストもまだできないらしいし お前らの民度と知識量ってN速とあんまり変わらんな
【天才】スーパー中学生誕生、プログラミング言語わずか数週間で開発、U-22プログラミング・コンテスト2019 ★4
https://asahi.5ch.net/test/read.cgi/newsplus/1571892411/ クソジジイ「俺でも作れる!」
俺「へー!じゃあ今まで作ったアプリ見せてよ!」
クソジジイ「お、おらは会社でJavaしか使ったことなくてプライベートでは5chしかやってないだ……」
これさ、すっげー哀れだよな? 数週間で作れたらすごいと思うけど、
それってバグがない製品品質のものができたならってことなんだよね
たたき台的なものは、それぐらいで作れるけど、
そこから品質を上げるのに時間がかかるんだよ
テストとか一切入ってないだろうし
っていうか、オブジェクトファイルや
VIMの.swpファイル入ってるけど大丈夫か?w ここの住人なら「仕込みのウィルスが入ってる可能性もあるから走らせないよ」と言うよな SIerおじいちゃんはテストが〜セキュリティが〜ってお客()の顔を伺いながら作るのが仕事だから新言語とか作れるわけ無いじゃんwwwwww 作る意味がないから作らないんだよ
Rubyの頃とは違って個人が作った言語なんて通用する時代じゃない
それ以前に言語の中身について議論するつもりがないなら他の板でやれ >>92
テストは自分のためにやるんだぞ?
テスト無くてどうやって新たな機能追加するんだ?
修正するたびにバグが入るだろ >>93
言語の中身に、語るようなことあるのか?
まだできないことは後で実装するとして、
(C/C++との比較じゃなくて)他の言語と比べた時のメリットとか
可読性が〜という抽象的な言葉ではなく
○○によって可読性が高いみたいなことなんかあるの? >>95
中身について語れることがないならこの板にスレを立てるべきではない
中学生が言語を作ったんだ、すごいねーってのをやりたいならニュース系やマ板でやるべき yacc とは何か
racc とは何か
bison とは何か
が判る本
https://bookmeter.com/books/431440 マ板の住民なら一度は読んどけ
第二版
https://bookmeter.com/books/185042
旧版
尼 4781905854 (I)
尼 4781905862 (II) ■ このスレッドは過去ログ倉庫に格納されています