PS

2014-05-01から1ヶ月間の記事一覧

Extremal (epi)monomorphism

記法 Regular (epi)monomorphism 何かの(co)equalizerになっているmorphismのこと。*1 Extremal (epi)monomorphism を満たす(epi)monomorphism のこと。 命題 参考文献 Abstract and Concrete Categories: The Joy of Cats (Dover Books on Mathematics) *1:…

scala.Singleton

scala.Singletonって何?という話 エラーメッセージによると、scala.Singletonはfinal traitでありextendsできない。 Path Scala言語仕様(以下SLS) 3.1より Paths are not types themselves, but they can be a part of named types ... ざっくり言うと、val…

shapeless.Lazy

shapelessのLazyを攻略する試み。*1 実装 implicitlyのためにmacroで実装される。quasiquoteを使うと trait Lazy[T] { val value: T } object Lazy { implicit def mkLazy[T]: Lazy[T] = macro mkLazyImpl[T] def mkLazyImpl[T](c: Context)(t: c.WeakTypeTa…

Type macro風のmacro

型を返すmacroがボツになり、 type t = typeOf("hello") と書けなくなったので替わりになるもののアイデアメモ。*1 その1 valを経由して val t = typeOf("hello") type t = t.unwrap とする。 その2 Annotation macroを使って @typeOf val t = "hello" と…

MathJax

TeX

はてなブログのtexがMathJaxに対応したらしい。 変更点 \limitsが多くの記号に使えなくなった(ようだ)。 \oversetと\undersetを使う \congが使えるようになった。 記号の隙間が適切になった。 dash(\unicode{x2013})が使えるようになった。 Text attributes…

Scala 2.11(のmacro)

2.10辺りからの変更点 Untyped macroがなくなった。 替わりに文字列を使う。*1 Type macroがなくなった。 言語の見た目を拡張するのはよろしくない、という方針か。 どうエミュレートするか悩みどころ Contextがwhitebox.Contextとblackbox.Contextに分かれ…

Power functors

記法 任意のuniversal morphism: について、 とのmediator を、 のような感じで、 と書くことにする。 Power functor その1 Power projectionの族: が存在するならば、これをnaturalにするただ一つのcontravariant functor: を作ることが出来る。 Power func…

Codensity monad

Codensity monad Functor: について、right Kan extension of along : が存在するならば、 *1 は、monadを成す。このmonadをcodensity monad of という。 Adjunctionからのcodensity monad 特に、 がleft adjoint: を持つとき、Adjunction lifting - PSによ…

Power

Power をlocally small categoryとする。 について、constant functor: *1 のlimit、つまりproduct: を、power of といい、 等々と書く。そのprojectionは、 のようなmorphism族である。 Natural bijectionによる表現 Power projectionは-terminal morphism…