SecHack365 2020年度 川合ゼミの説明
(1) こんな人を募集します!
- 「SecHack365 2020年度 開発駆動コース 川合ゼミ」では、こんな人を募集します。
- [1]プログラミング言語を作りたい人。
- [2]そのほか川合が興味を持ちそうな開発をやりたい人。
- [2]を選ぶ場合、私が今までどんなことをしてきたのかを知っておく必要があるでしょう。
- 1996年~ V98というエミュレータを開発
- 2000年~ OSASKというPC向けの超軽量型の自作OSを開発
- 2002年~ naskというx86用のアセンブラを開発
- 2003年~ tek5というLZMAをベースにした可逆圧縮形式を開発
- 2005年~ 書籍「30日でできる!OS自作入門」を執筆
- 2010年~ blikeというC言語用のグラフィックライブラリを開発
- 2013年~ OSECPU-VMという仮想マシンを開発(このバイトコードでプログラムを書くと驚異的に小さくなる)
- 2019年~ kcl03というC言語用の基本ライブラリを開発
- 2019年~ kcll00というC言語用のプログラミング言語開発支援ライブラリを開発
- 2019年~ ES-BASICというスクリプト言語を開発
- まとめるとこんな感じです。
- エミュレータ自作、PC向けのOS自作、言語自作、圧縮、理想のCPU命令を考える、ライブラリを作って自身の開発力を底上げ
- [1]でも[2]でも、自分の作品を自分で常用しようと思っている人を私は高く評価します。
- これに関する私の考え方はp20200311aに書いてあります。
- 一方で「これを作ることで〇〇を実証するのだ」みたいなのも私はOKなので、自分で常用しなければ絶対だめだというわけではないです。
- [1]の場合、SecHack365で作るからには、ただのプログラミング言語であるわけにはいきません。セキュリティに配慮した言語を目指しましょう。
- しかし最初からセキュリティを意識して作るのは大変かもしれないで、途中からセキュリティ機能を付与していけばいいと私は思います。
- 自分で作るからには、日々、「こんな言語機能があれば絶対に便利なのに」と思ったことをまず盛り込んで、その上でセキュアにしましょう。
- セキュリティ機能ってどんなことをすればいいの?って思いますよね。私が思いついたことをまとめてあります。→seclang01
(2) 補足
- [Q]プログラミング言語を作ってみたいのだけど、作ったことがないのでできるかどうかわかりません。
- [A]text0010(およびその続き)を読んでみてください。これを読んで「なるほどこれだったら自分でもできるかも」と思えたら、もうOKです。
- TL-03cまで理解できたなら、選考を通る可能性は十分にありますので、「ばっちりTL-03cまでは理解できています!」ってアピールしてください。
- [Q]もう作り始めているのですが、その続きを作る(改良をする)みたいなのでもいいでしょうか。
- [A]それは技術力と熱意の証明だと思うので、大歓迎です!
- むしろこれから作ろうと思っている人も、SecHack365での合格通知など待たずにどんどん作ってほしいです。応募前から作ってほしいくらいです。どこまでできたか教えてください。