ringoさん
VIEW
Blawn製作者 上原直人さんのツイッターは?プロフィールやソースコードも紹介
開成中学校3年の上原直人さん、独自プログラミング言語「Blawn」わずか数週間で開発、U-22プログラミング・コンテスト2019 - BCN+R
https://t.co/uuEqwe4HUl
Blawnの特徴は、型名の記述が一切不要、構文の可読性が高い、すべての関数/クラス、コンパイル速度と実行速度が速い、メモリが安全など https://t.co/7fnlzDBq6k
上原直人さんのプロフィール
名前:上原直人
年齢:15歳
学校:開成中学校3年生
上原直人さんのツイッター
Naotonosato (@Naotonosato)さんの最新ツイート ㅤしゅみ:🎸⛷💻⚾️ Blawnって言語作ってるんで見てみてね さるのこしかけ
そういえば昨日のU22プログラミングコンテストで、
経済産業大臣賞(総合)
Boys and Girls, be ambitious賞
サイボウズ賞
Best viewers賞
に選んでいただきました🔥🔥🔥🔥
あとめっちゃ目細めて睨んでるように見えるのは、フラッシュで目を瞑りかけたからです
不機嫌なわけじゃないです…
u22プログラミングコンテスト関係者の方々、ありがとうございました
特にプレゼンの機材確認の時には自分のpcがイカレたせいで担当の方にはご迷惑おかけしましたが柔軟な対応をしていただき、プレゼンをする事ができました
ありがとうございます。
あと協賛企業の方やコンテストの開催に関わって下さった全ての方々へ。
若者の才能を発掘し、社会に押し出していく稀有な機会を設けて下さったことは間違いなく素晴らしい社会貢献であり、これに感謝の意を示したいと思います。 t.co/r71G1DvohW
Blawnのソースコード
blawn結構反響あるみたいで嬉しいわ
ソースここにあるんで適当にみてってください〜↓
t.co/ysS1RHQDZO
Pleasant Programming Language. Contribute to Naotonosato/Blawn development by creating an account on GitHub.
class List(element) @size = 0 @allocated_size = 1 @_element = element @element_size = sizeof(element) @element_typeid = typeid(element) @array = {} @function resize() self.allocated_size = self.allocated_size * 2 self.array = __blawn_realloc__(self.array,self.element_size,self.allocated_size) return @function append(new_element) if typeid(new_element) != self.element_typeid ( print("Error: append invalid type element to list.") ) if self.size + 1 >= self.allocated_size ( self.resize() ) __blawn_memcpy__(self.array,self.size,self.element_size,new_element) self.size = self.size + 1 return @function get(index) if self.size == 0 ( print("err") ) data = __blawn_index__(self.array,self.size,self.element_size,index) res = __blawn_cast__(typeid(self._element),data) return res @function set(value,index) __blawn_set_element__(self.array,self.size,self.element_size,value,index) return class Person(name) @name = name @function hello(s) text = "Hello! I'm " text.append(self.name) print(text) print(s) return @function m() print("call m") return @function mm() print("call mm") print(self.i.s) return function t() 0 + 9 return 900 a = 0 print("AAAAAAAAAAAAA")引用:https://github.com/Naotonosato/Blawn
みんなの声
記事『スーパー中学生誕生、プログラミング言語わずか数週間で開発』
C++を始めたけど扱いにくくて、可読性の高い構文とメモリの安全性や速度に注力した独自言語(『Blawn』)を作りたくなったとのこと。素晴らしい!
サンプ... #NewsPicks t.co/5flWuC4LdQ
コメントここに続き。
ー
サンプルコード見た。ぱっと見、C系のように中括弧や ; でスコープや文を区切るのではなく、Python みたいにインデントベース。あと型名が無いけどそこも Python みたいに宣言無い感じで作ったのかな?
7月頃に構想し構文解析を行い、プログラムを書き始めたのは8月頃。すごい
これコンパイラ部分の彼のソースコード。
C++ で実装されている模様。
t.co/iOIPiaG0fl
また、.vscode があるので、Visual Studio Code 使って開発した模様☺️ #vscode
プログラミング全然わからんけどBlawnっていうネーミングセンスだけですごい
C++開始から数週間というこでプログラミング初めて数週間じゃないのね、さすがに。
それにしても数週間でとか素晴らしい!
#Blawn #U22プロコン
しかしマスターチ言語(ブラケット)は嫌われる風潮なのかなあw t.co/m5cxobT3GX
Blawn、Pythonくらい単純に誰でも書けてC++くらい速い夢の言語として僕の研究生活を楽にして欲しい!
「Pythonっぽく書ける○○」というのが割とトレンドかな。
KotlinもPythonっぽく書けるJavaみたいな位置づけだし。
日本人が生み出した言語というとRubyが世界的に有名ですが、Blawnもそんな風に人が集まって成長していける言語になると良いですね。 #NewsPicks t.co/PDJ9ZfWsAi
Blawn純粋に凄すぎて、、、洗練されたらリアルにPython、c++から主流が切り替わる可能性あるのでは、、(c++嫌い故大喜び)
Blawn いいなぁって思うしphpチックなきがする
>Blawnの特徴は、型名の記述が一切不要
推論出来ないケースでは型定義をしないっていうのは不可能だと思うんだが・・・
t.co/fmcFJZtMSx
Blawnのカラクリをなんとなく察したが、型安全性…
コメントを投稿する