c4se記:さっちゃんですよ☆

.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)

.。oO(此のblogは、主に音樂考察Programming に分類されますよ。ヾ(〃l _ l)ノ゙♬♪♡)

音樂は SoundCloud に公開中です。

考察は現在は主に Scrapbox で公表中です。

Programming は GitHub で開發中です。

「世界創作の方法」

兩河世界と云ふ創作を延々とちまちまとやってゐる。他で似たものは創作されてゐないと思ふので、ここで使ってゐる方法をしたためた。

scrapbox.io

目次

- 世界設定との違ひ
- 蒐集と配置
- 夢想と審美
- 再現と置換
- 三つの方法同士の關係
- 結論

この題はネルソン・グッドマン「世界制作の方法」菅野盾樹譯、ちくま学芸文庫、2008 年をもじったものだ。

世界創作とは「現實そのものの世界を創作する」と云ふ觀念である。この凡庸な定義文が如何に似た觀念とは異なるのかは論じた。實は世界創作の方法とは兩河世界の仲間内で使ふだけの方法ではなく、最近私が至る所で使ってゐる方法であった事は書いていくうちに解った。私は兩河世界の理屈擔當だから、普段の理屈に使ふ方法と互ひに影響し合ふのは仕方がない。

未定稿だからちょくちょく變はると思ふ。十年ぶりの哲學風の文である (「ガルデアの統合性に就いてのキリスト敎の三位一體との類󠄀比に基づいた解釋」を數へないならば)。文體もだいぶん變った。

holiday_jp-elixir に入れた binary の git diff をとる設定

自明なのだけれども。

github.com

この data source は YAML 形式だが、實行時の YAML library への依存を除く爲と起動・動作速度の爲に ETS (Erlang Term Storage) file に變換して同梱してある。おそらく Erlang の ver. を上げたからなのだらうが、data source には差分が無いのにこの ETS file に差分が出た。今迄は data source に差分が無いのだし test が通るから好いであらうと commit してゐたが、矢張り差分を見たいよなぁ。Elixir で inspect/2 をし差分を出す設定を入れた。

priv/holidays.ets diff=holidays
[diff "holidays"]
    textconv = mix run -e 'HolidayJp.Holidays.holidays() |> IO.inspect(pretty: true, limit: 10000)'

好く知られた設定項目だけど自分でやったのは初めてっぽい。

ただ binary としての差分を見たいのであれば git diff --binary priv/holidays.ets で好い。

Evil on Emacs で括弧を區切りとして comment out/in する

普通に comment out/in する command である M-; でよい。macOS であれば Meta key は Option key に割り當てる事が多い。

(defn f
  []
  (x))

(x) を comment out したいとしよう。(x) のどこかに cursor を置き va((x) を選擇する。M-; で comment out 出來る。

(defn f
  []
  ;; (x)
  )

;; (x) の行を Shift-v で選擇し M-; で comment out 出來る。Emacs (Evil) の標準機能である。行單位で削除したり comment out すると括弧の對應が崩れるので、括弧を選擇して comment out する。括弧の色々な編緝は smartparens で行ってゐる。

github.com

圈論初級の monoid っぽいの達を纏めた

登場人物は

  • monoid
  • monoid の圈
  • monoidal 圈
  • monoid 對象の圈
  • monad

である。

TL;DR

  • monoid は集合上の結合律と單位律とを滿たす演算である
  • monoid の圈 は monoid と monoid 準同型との成す圈である
  • monoidal 圈 は對象の間に自然同型の違ひを除いて monoid の樣な關係の成り立つ圈である
  • monoid 對象 は monoidal 圈に於いて自身と monoid の樣な關係を再現する對象である。monoid 對象の圈 は monoidal 圈の中で monoid 對象全體の成す圈である
  • monad は monoid の樣な性質を持つ自己函手である

全て異なる概念だが、深く關係してゐる。

  • monoid は對象が * の一つだけである圈 \bf C の射集合 {\bf C}(*,*) である
  • monoid と嚴密 monoidal 圈とは餘分な射を除いて同一視出來る
  • monoid は集合と寫像の圈 \bf Set を直積で monoidal 圈としたものの monoid 對象である
  • 前項に依り、monoidal 圈 \bf Set の monoid 對象の圈は monoid の圈である
  • 嚴密 monoidal 圈は (小さな) 圈と函手の圈 \bf Cat を積で monoidal 圈としたものの monoid 對象である。monoid と \bf Set との關係は、嚴密 monoidal 圈と \bf Cat との關係に相似である
  • monoidal 圈は 0-胞が * の一つだけである双圈 \bf B の 1-胞を對象とする圈 {\bf B}(*,*) である。monoidal 圈と双圈との關係は、monoid と圈との關係に相似である
  • monad は自己函手の圈の monoid 對象である

圈としての monoid、monoid の圈、monoidal 圈、monoid 對象の圈

scrapbox.io

Shibuya.lisp lispmeetup #94 に參加した

Zoom 開催です。Clojure 囘でした。

Shibuya.lisp さんには二回目の參加ですが、相當昔に偶々職場で開催された時だったので実質初です。その時も Clojure 囘だった氣がする。

これは memo です。

scrapbox.io

ClojureScript の eco system を一切知らんなと思ひました。

malli は興味深い。標準 library である clojure.spec と競合するのが不安ではある。

github.com