2020年4月17日のブックマーク (5件)

  • セルフホスト可能なCコンパイラを書く

    最近、コンパイラを書くことが流行っているようだ。流行に乗ってやってみたらいろいろな知見が得られたので紹介したい。 コンパイラを書くと一口に言ってもいろいろなスコープがある。ここではC言語を用いてCコンパイラを書くことを選択した。C言語は言語仕様的にコンパクトで広く知られている。また、ツールとしてのCコンパイラも普及している。その場合、自分が書いたCコンパイラで、自分が書いたCコンパイラのソースコードをコンパイルすることが原理的には可能だ。これをセルフホストという。ひとつの到達目標として非常に興味深い。 当初は冬の間に終わらせる予定だったのだが春まで伸びてしまった。しかし、春になっても寒かったり雨で家に居る日が多く、アウトドアシーズンまでに目標のセルフホストを達成することができた。 昔、Cのインタプリタを書いたことがあったが、コンパイラを書くのは、はじめてである。時代も進んで開発手法が変わっ

    htilcs1115
    htilcs1115 2020/04/17
    いい話。コンパイラ書きたくなった。
  • テキストエディタを作る

    ここの記事を更新するのは約1年ぶり。夏の間は遊んでいたり秋からは仕事が忙しくなったりの近況だった。 コロナウィルスで自宅に閉じ込められてしまったので、プログラミングの練習のためにテキストエディタを作ってみた。 得られた知見などを紹介しよう。 目標としている機能・実装 練習・教材用として十分な小ささ。 記事のネタになる。また、作っていて飽きない。ひと篭もりするプロジェクトとして適切なサイズ。 昔から、プログラマなら作ってみたいものとして、(1)コンパイラ (2)OS (3)エディタ、がよく挙げられる。コンパイラについては以前に書いた。今回はエディタにチャレンジしてみることにした。 テキストエディタを作る場合、GUIツールキットを使って作成することも考えられるが、今回はviのようにターミナル上で動作するタイプのものを作る。時間があれば、次の様な発展的な目標も検討したい。 設定変更機能を持つ(そ

    htilcs1115
    htilcs1115 2020/04/17
    面白い。
  • GitHub - redox-os/termion: Mirror of https://gitlab.redox-os.org/redox-os/termion

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - redox-os/termion: Mirror of https://gitlab.redox-os.org/redox-os/termion
    htilcs1115
    htilcs1115 2020/04/17
    これ便利そう。
  • 言語処理100本ノック 2020 (Rev 2)

    言語処理100ノック 2020 (Rev 2) 言語処理100ノックは,実用的でワクワクするような課題に取り組みながら,プログラミング,データ分析,研究のスキルを楽しく習得することを目指した問題集です. 詳細 ツイート

    言語処理100本ノック 2020 (Rev 2)
    htilcs1115
    htilcs1115 2020/04/17
    今日からやってみようかな。
  • ウェブ魚拓

    URL: http://note.mu/kotofurumiya/n/n31d401fce782 取得日時: 2019年1月5日 01:45 削除理由: 個人情報削除済み 手続日時: 2021年2月16日 18:56 SHA-256: 確認 *突合には「魚拓のみの表示」のファイルからCHECKSUMタグとその外側を除去してください 裁判所・弁護士様等による要望向け:

    ウェブ魚拓
    htilcs1115
    htilcs1115 2020/04/17
    これなんで今さらブクマ入りしてるんだろうか。"お前はどんだけ勉強しても一生バカだし、お前にオセロは作れない。だからオセロをお前のレベルまで落としてくる必要がある。"ここは好きかも。