Lawvere Theory?

昨年に引き続き、Category Theory for Programmers

github.comを読んでいて、今はLawevere Theoryのところなのだけど、正直よく分からなくてなかなか進まない、、、。先へ進めば分かるかと思って進めると、むしろ分からないことが増えてしまって、また戻る、、、を繰り返している。

 

でも、この作者のMilewskiさんの説明はすごい丁寧で、かなりわかりやすく書いていることは確か。普通の数学の本だと、「f: m -> n だから、リフトして a^n -> a^m」みたいに書かれているところを、f: m -> n で、これはn要素からm要素を選ぶこと(重複有り)を記述している、という説明があるし、a^n -> a^m のところも、矢印の向きに気をつけて、という説明がある。

どちらも、説明がなければ間違って解釈するところだったので、本当に、間違いやすい箇所に気を使って説明がされているのだな、ということを感じる。

 

にもかかかわらず、難しい、、。やはり単純なことでも、抽象的ではなく、簡単な例をたくさん見てみないと、自分には難しいなと思った。

2019年を振り返って

今年は何もブログを書かないまま、終わってしまいました。

今年頑張っていることというと、プログラマー向けの圏論の本

 

bartoszmilewski.com

を読んでることくらいですかね。この本は本当に良い本です。全部で500ページもあるので読み切るのは大変ですが、そして、僕も400ページくらいで一度行き詰まって、再度最初の方から読み直したりしていますが、数学の専門書の圏論の本にくらべれば、だいぶ丁寧に書かれています。一ページあたりの記述量も少なめですし、スマホからでも読めます。

 

この本が良かったので、結構、無料で落とせるPDFを結構落として、ちょこちょこみるようになりました。

 

当初は年内に読み切るつもりでしたが、Kan拡張あたりで挫折したので、来年こそは読み切ろうと思います。

そして、いつかはこちらの本

 

homotopytypetheory.orgにも挑戦したいです!

 

 

それでは良いお年を

 

 

 

 

Bubcom80って

前からちょっと気になってはいたのですが、1981年に発売されたBubcom-80というパソコン、
発売元はシステムズフォーミュレートですが、富士通OEMで作成されたようで、見た目は
同時期に発売された富士通FM-8にそっくりで、兄弟機種とか呼ばれています。

違いは、FM-8が6809なのに、Bubcom-80はz80で、CP/Mを意識していたと言われていますが、、、。

でも、前からちょっと思ってなんですが、これってむしろPC-8001とそっくりのような、、。確か、
PC-8001のN-Basicのテープがそのまま読み込めたような気がします。Basicは同じMicrosoft系ですが、
互換性がどのくらいあるかはわかりません。
(当時は、三菱のMulti-8や、東芝Pasopiaなんかも、PC-8001のテープがそのまま読み込めたので、
ここまでであれば特別めずらしくはないかもしれません)

あと、G-VRAMを搭載しない状態では、160x100のセミグラフィックが使えるということですが、
これもPC-8001と似ているな、、、と思っていたのですが、

http://www.retropc.net/mm/archives/1785

こちらの記事を見ると、DMAがNECのμPD8257C-5で、CRTCもNECのμPD3301D-2!。
PC-8001とまったく同じではありませんかっ! これはちょっと衝撃的でした。
ということは、あの(いまいましい)横の色数の限界も同じってことですよね。

テキストVRAMの開始アドレスが、PC-8001はF300Hからで、BUBCOM-80はF200Hからとちょっと違って
いたりもしますが、その対応をすれば、PC-8001のソフトは簡単な修正でほぼすべて動作する作りになっていた
のではないかな、と思います。特にマシン語のゲームなどは、移行しやすそう。


1981年には、PC-8001の上位機種であるPC-8801が登場しますが、ある意味、このBubcom-80もPC-8001の後継機種みたいな気がします。


BUBCOM-80はそれなりに売れてはいたようですが、当時のFM-8やPC-8801には叶わず、パソコン雑誌にも
ほとんどBUBCOM-80用のプログラムは掲載されなかったと思います。本当に残念、、。

しかも、MZ系と同じくクリーン設計がなされていて、ROM-Basic搭載機でも、ROM情報を一度RAMに展開して
Basicが起動するし、後のシャープのX1 (1982年発売) と同様、VRAMをIO空間に配置してバンク切り替えに頼らずに
高解像度グラフィックスを実現してたり、キャラクターフォントを自由に変更するPCGを搭載していたので、
当時の御三家であるNECSharp富士通のいいところどりをしていたような、先進的なパソコンであったように
思います。



さらに、この当時はパソコンで通信を行うのは一般的ではなかったですが、BUBCOM-80は通信機能も充実していたらしい、、。
1982年には、ハードディスクもシステムズフォーミュレートから発売されているし、、。

http://radioc.web.fc2.com/column/pcad/ad/hdbc800.htm

今年(2018年)になって、エミュレーターをいくも開発しているTakeda氏が、100台目のエミュレータとしてこのBubcom-80のエミュレータを公開されました。

http://takeda-toshiya.my.coocan.jp/

ぜひ試して見たいけど、ROMの入手がほぼ不可能、、。残念です。BOOT ROMだけ適当に作って、機械語でプログラム作れば動作するかな、、、という感じです。