タグ

softwareとgccに関するraimon49のブックマーク (2)

  • ソフトウェアの互換性と僕らのUser-Agent文字列問題|Rui Ueyama

    いろいろな環境で動くプログラムでは互換性のためにその場しのぎのことをしないといけないことがよくあるけど、歴史が積み重なってくると、アドホックな技の上にアドホックな技が積み上がる喜劇的な状態になることがある。こういう問題は認識するのは簡単だが直すことは誰にもできない。まさに僕がそのような体験をしたのでちょっと説明したい。 僕は仕事としてオープンソースのlldというリンカを書いている。リンカというのはコンパイラが生成したバイナリファイルをつなぎ合わせて最終的な実行ファイルやDLLを作成するプログラムで、知らない人も多いと思うけど、何をコンパイルしても最後にはリンカが動いている。lldは既存プログラムより何倍も速くてビルドが早くなるというので最近は結構人気が高まっていて、FreeBSDなどのいくつかのOSが全面的にスイッチしようとしたり、あるいは大規模プロジェクトChromeや、どうもFire

    ソフトウェアの互換性と僕らのUser-Agent文字列問題|Rui Ueyama
    raimon49
    raimon49 2017/11/15
    この手の歴史を探り当てて現実解を選択できる人達による努力の上で、楽をさせてもらってるんだよなぁと感じる。
  • 自由ソフトウェア運動の思想に囚われた技術的に劣った選択

    このところ、自由ソフトウェアのコピーレフトライセンスは方向性を間違えており、許諾的なオープンソースライセンスが流行っているとする主張がある。 漢(オトコ)のコンピュータ道: フリーソフトウェア運動は方向性を間違えてはいない これについて思うことがあるので書く。その前に、まず自由ソフトウェアとは何かということから説明しなければならない。 もちろん、許諾的なオープンソースライセンスと呼ばれるもののほとんどは、ストールマンの自由四原則を満たす。 What is free software? - GNU Project - Free Software Foundation (FSF) すなわち、 あらゆる目的でプログラムを実行する自由(自由0) プログラムがいかにして動作するのかを検証し、変更して自分の意のままに動作させる自由(自由1)。ソースコードへのアクセスはこの自由への前提条件である。 複製

    raimon49
    raimon49 2013/04/24
    >自由を保証するため、意図的に技術上優れた設計ではなく、不自由に転用しにくい設計にしてしまうこと。これをしてしまうと、技術的優位に立つことができなくなる。技術的優位に立てなければ、人には使われない。
  • 1