前に「浮動小数点数小話」という同人誌を出しましたが、私としては浮動小数点数についてもっとちゃんとした本をいずれ出したいと思っています。執筆に着手するのは早い方が良いので、浮動小数点数についてのまとめノートみたいものを書き始めています。
続きを読む「日記」カテゴリーアーカイブ
![](https://blog.miz-ar.info/wp-content/uploads/2024/06/IMG_4174-1-624x468.jpg)
技術書典16の振り返り
技術書典16で「だめぽラボ」としてサークル参加しました。振り返って色々書きます。
当日来てくださった方、オンラインで購入してくださった方、会場で差し入れしてくださった先輩と「趣味はデバッグ……」のお二人、新刊の表紙を描いてくださった610氏、そして小物の用意や売り子を手伝ってくれた妻に感謝します。
関連記事:
続きを読むやりたいことリスト(2024年6月)
相変わらずやりたいことに対して時間が足りません。執筆とOSS開発で食っていきたい人生だった。
プログラミング
作りたいものがたくさんあります。
LunarML
TextIO.StreamIO
/BinIO.StreamIO
を真面目にやったら出力コードが肥大化しました。不要コード削除などの最適化を頑張ったところマシにはなりましたが、まだ若干不満があります。
しかし、そろそろバージョン0.2をリリースした方が良いかもしれません。
新しいバックエンドを追加するアイディアは色々あります。ネイティブコード、WasmGC、PHPなど。
周辺環境の整備もやっていきたいです。パッケージマネージャー、ビルドシステム、ライブラリーなど。
ClutTeX
Standard MLに移植するぞと息巻いていましたが、最近はあまり手を動かせていません。
数学文書システム
LaTeXをいい感じに解釈してHTMLとかを生成するやつを作りたいです。まあこれはLaTeXMLに乗っかるのでも良いかもしれません。Perlよくわからんけど。
その他
libcを自作したい欲求が若干あります。C23のサポートとか、マイナーな浮動小数点型のサポートとか。時間がないのでやらないけど。
執筆
執筆したいものもたくさんあります。
浮動小数点数関連
次の同人誌は「浮動小数点数小話」を発展させて、もっと体系的な本を書きたいです。少しずつ書き始めた方が良さそうです。
初等解析学コンテンツ
三角関数とかの数学関数の計算法をやるコンテンツを書きたいです。前にやった「週刊 代数的実数を作る」の初等解析版みたいな感じを構想しています。
作ってわかるTeX言語
TeXの展開・実行(代入)の部分を再実装することで理解するコンテンツを書きたいです。
前に書いた TeXの字句解析器の動作について はそのプロトタイプです。
その他
もうちょっと前は「数学好きのためのHaskell入門」とか「構成的代数と多項式の因数分解の話を絡めた何か」を書きたい、みたいなことを言っていた気がします。これらもまだ実現していません。
前に書いたように、執筆活動やOSS開発で月10万円くらい売り上げることができれば、労働(Pythonコードのお世話)の時間を削ってそういう活動の時間を増やせそうです。しかし、GitHub Sponsorは今の所0で、同人誌の売り上げもたかが知れています(直近のイベントの計算はちゃんとしてないけど……)。Webサイトの広告はクソまみれな上に私のレベルではほとんどお金になりません。なかなか難しいです。
この記事は30分で書きました。
技術書典16に、Haskellでの型レベルプログラミングの本を出します
今度の5月26日(日)に池袋でオフライン開催される技術書典16に、サークル「だめぽラボ」で新刊「Haskellでの型レベルプログラミング」を出します。既刊も在庫があるものは頒布します。
続きを読むカビたレンズをどうするか
レンズは保管状態が悪いとカビるものだ。私がメインで使っているズームレンズも、カビてしまった。内部がカビているので、表面を拭くだけでは落とせない。
続きを読む2023年振り返りと来年に向けて
さようなら、Evernote
Evernoteがまた改悪するらしい。
- Evernote、無料アカウントは「最大50個のノートと1つのノートブック」に – ケータイ Watch
- Update: Evernote Free accounts will have fifty notes and one notebook
この前に値上げのニュースがあって、Personalプランが年額5200円から9300円に値上がりする。流石にこの値上げ幅はきつい。私の次回更新は数日後なので、PersonalをやめてFreeプランにするつもりだった。Freeプランでは同期できる台数にきつい制限があるので、どのみちEvernoteは常用をやめるつもりだ。過去のノートの参照には使うかもしれない。
私がEvernoteを使い始めたのは2010年だったらしい。13年間の長い付き合いだった。
Evernoteのデスクトップアプリを使うとノートをエクスポートできる。Freeプランは今回の改悪後も参照はできるようだが、念の為、HTMLにエクスポートした。
ノートテイキングアプリは何が便利だったか。私が求めるのは
- 気軽に記入できること
- 検索できること
- 複数端末で同期できること
あたりだろうか。Evernoteにはノートブックという分類の仕組みがあるが、最近はあまり活用していない。ユーザーに分類させるのはユーザーの時間を消費するので、分類はAIがやるか、検索機能を強力にする等で対応するべきだと思う。
今後何を使うか。最近流行りなのはNotionというやつだろうか。しかし、いまいち新しいサービスを試す気力が湧かない。
登山計画書など、他人と共有する必要のある文書は最近はGoogleドキュメントで書いている。個人用のメモもGoogleドキュメントで良いのではないか。しばらくGoogleドキュメントを常用してみて、「気軽さ」「検索性」を確かめてみたい。
Appleのメモアプリというのもある。iPhoneの購入により手持ちの端末が大体Apple製になったのでこれもアリだ。しかしいざという時のエクスポートの容易性はよくわからない。
やりたいことリスト(2023年10月)
数ヶ月前にやりたいことリストという記事を書きましたが、相変わらず(?)やりたいことに対して時間が少なく感じます。
プログラミング
LunarML
そろそろv0.1をリリースしたいです。記事も準備しています。
ただ、ClutTeXで必要な最低限の機能は揃えてからリリースしたい気もします。直近ではClutTeXで欲しくなったので BinIO
と String.isSubstring
を実装しました。
10月中にリリースできなくても、11月にはリリースするようにしたいです。
ClutTeX
BibTeX関連で具体的な修正箇所が判明したので直しています。
直したらリリースするべきですが、GitHubの方に来ているPRを先にマージした方が良いのか悩んでいます。まあこまめにリリースすればいいんですけど。
Standard MLへの書き換えも気が向いた時に進めていて、手足となるモジュールは大体移植した(あるいはLuaコードのラッパーをSMLで書いた)と思います。あとは一番大事なメイン部分です。
Haskell関連
SIMD周りの作業は休止中です。
32ビットArm向けのクロスコンパイラーをビルドしようとして遭遇した問題を(原因をある程度特定した上で)バグ報告したりしました。
執筆物
書きたい記事はいくつかあります。
- 新しくプログラミング言語を作るとしたら文法をどうするか
- 型クラスとインターフェースの比較
- x86のVEX/EVEXプリフィックスとAPXについて
勉強したいこと
Handbook of Constructive Mathematicsは気になった章をつまみ食い的に読んでいます。
それで、構成的数学のモデル(?)みたいなものをもっとちゃんと勉強するべきだと思って、SGLを読んでみようかと思っています。しかしどうやって時間を捻出するかが問題です。
アウトドア
10月に入ってから安達太良山に行きましたが、若干物足りなかったので、もう少し秋山に行きたいです。しかし泊まりで行くと大掛かりになるので、近場で済ませるかもしれません。
欲しいもの
ミラーレス一眼が欲しいけど先送りにするのは前の記事に書きました。当面は一眼レフを使い続けます。
ただ、一眼レフで使っているレンズが、保管環境の管理をサボっていた時期があったせいか、像が微妙な感じになっている気がします。なので新しいレンズを入手したいのですが、一眼レフの全盛期が過去のものになったせいか、レンズのラインナップが以前と比べて減っている気がします。どうしたものか。
どっちみち今年は色々大きな出費があった(iPhone、登山靴、ミニPC)ので、出費を躊躇しています。
時間とお金の捻出
前の記事で言及したGitHub Sponsorsを始めてみましたが、まだ勝手がよくわかりません。まあどっちみちあまり期待はしていないのですが。
この記事は20分で書きました。
![](https://blog.miz-ar.info/wp-content/uploads/2023/09/IMG_2471-624x468.jpeg)
夏の終わり/蔵王山と八ヶ岳
今年の夏はいくつか山行を立てた。この記事ではそれらを簡単に振り返りたい。
続きを読むやりたいことリスト
Je n’ai pas le temps
Évariste Galois
最近、やりたいことが急速に増大しており、時間の不足を感じます。この記事では私のやりたいことを列挙してみます。
目次
プログラミング関連
LunarML
別の記事でも書きますが、そろそろリリースしたいです。
ClutTeX
放置気味です。
GitHubにIssueとPRがいくつか届いていますが、対応できていません。
TeX Live 2023になってBibTeX関連の機能が壊れたような噂をキャッチしています。それもなんとかしなければなりません。
ClutTeXは現在Luaで実装されていますが、型がなくて改修が辛いです。そこで、ClutTeXの実装に使う言語をStandard MLに置き換えることを考えています。ソースはStandard MLで書いて、LunarMLを使ってLuaにコンパイルする計画です。
書き直しのためにはまとまった時間が欲しいです。
Haskell関連
最近はGHCのSIMDプリミティブをもうちょい活用できないか考えています。
コンパイラーの用意するプリミティブがへぼいから使われないのか、誰も関心がないからコンパイラーに機能追加されないのかわかりませんが、とにかく何かしたいです。もったいない精神ってやつ?
できることはいくつか考えられて、
- x86 NCGでSIMDを扱えるようにする。
- LLVM backendでAArch64 (ASIMD) 向けコードを生成できるようにする(現状はx86だけ)。
- WebAssembly backendでSIMDを扱えるようにする。
- プリミティブ関数を充実させる。現状はsqrtやabsやビット演算がない(LLVMの最適化を当てにすれば回避方法はあるが)。あと比較演算とかselect系の型と命令もあると良さそう。
- FFIで使えるようにする。
などがあります。
このうち、x86 NCGについては先人が(確か)Summer of Codeで実装したパッチがありますが、一旦取り込まれた後不具合によりrevertされたという経緯があります。レジスターアロケーション周りだったかな?とにかく、モノはある程度できているので気合いがある人が時間をかければ修正できるかもしれません。
LLVM/AArch64の対応は難しいところをLLVMがやってくれるので比較的楽です。なので試しにパッチ(マージリクエスト)を作ってみました。まだ十分テストされているとは言えないのでDraft扱いですが。
テストのためにはSIMDを使うアプリケーションが必要です。ベクトルの内積なら誰でも書けますが、もっと複雑な例が欲しいです。N体問題とかハッシュの計算とかですかね。私は高性能計算に興味はありますが実力も動機付けも伴っていない人間なので、こういう時弱いです。
数学文書システム
既に何回か書いている気もしますが、Webと相性のいいやつを何か作りたいです。
執筆物
数学科のためのHaskell入門
数学とコンピュータの絡みに興味がある人間として、「数学科のためのHaskell入門」みたいな記事(本?)を書きたいです。
勉強したいこと
構成的数学をやりたいというのは4月の記事に書きました。
その時やっていた勉強は、本のUFDの定義が間違っていたことで精神力を消耗し、中断したままです。
そういえば親戚から誕生日のお小遣いを頂いたので、Handbook of Constructive Mathematicsをポチりました。足りない分は自腹です。海外からの取り寄せなので、いつ届くかはわかりません。
アウトドア
夏山に行きたいです。登山靴も新しいのを買ったし。
行きたい山は色々ありますが、今気になっているのは剱岳です。若いうちに登っておきたいです。
欲しいもの
自分の持っているWindowsマシンがIvy Bridge世代でいい加減古いので、新しいのをポチりました。高性能GPU搭載は諦めて、ミニPCです。それともeGPUできるのだろうか?(調べてない)
CPUはAMDのZen 4世代のやつです。AMDのCPU/GPUも触ってみたいなと思ってそれにしました。
ミラーレス一眼も欲しいですが、今年は色々大きな出費があった(iPhone、登山靴、ミニPC)ので先送りでいいかなと思っています。
写真の管理
自分の持っている写真の管理をどうにかしたいです。現状はApple謹製の写真アプリを使っていますが、自分に万が一のことがあった時に残された人がアクセスできません。
そこで、バックアップも兼ねて、これまでの写真をブルーレイに焼いてみようかと思っています。とりあえず結婚式の写真・動画をBD-R(2層)に焼こうとしています。他の写真はどうするか未定です。
スマートフォンで撮った写真はGoogleやAppleのクラウドストレージに流し込んでいますが、保存容量にはお金が必要なので、引き揚げたいです。iCloud Driveは現在月額400円の200GBプランですが、月額130円の50GBプランにならないかと思っています。
時間もお金も欲しい
やりたいことが多いと、なんとかして時間を捻出したいです。睡眠時間を削るのはやりたくないです。そうすると、日中の活動時間の多くを占めるのは労働なので、これに目が行きます。
もしも自分のやりたいこと(LunarMLやClutTeXや執筆活動)でそれなりのお金、例えば月10万円をコンスタントに稼げるようになれば、労働時間を削ってやりたいことをやることも考えられます。しかしまあ現実的ではないです。GitHub Sponsorsをやったところでどれだけ集まるでしょうか。
「時間がない」という記事を書くくらいならその時間をやりたいことに充てろ、と言われそうですね。この記事を書くのにかかった時間は50分くらいです。50分と「記事にして吐き出すことによるスッキリ感」のどちらに価値を見出すか、という話です。