mrsekutの雑勉日記2020/3
2020/3/19
圏論の歩き方の2章を読んだ
2020/3/18
ラムダ計算
直観主義論理
2020/3/17
LLVM
2020/3/16
2020/3/15
Hytlの整数だけをLLVMコンパイルできた
2020/3/14
ReaderモナドとIORefを組み合わせるやつをやってた
2020/3/13
圏論の歩き方を久々に読み返したら良い本だった
2020/3/12
圏論の道案内.iconの随伴の章を読んでた
めちゃ途中で力尽きた
ベシ圏.iconとかでは自然同値らへんから随伴を説明するが
多分一般的?にはこっち
圏論の道案内.iconは普遍性から説明していて、結構流れが異なる
Hytlのevalをenvを消すためにReaderモナドを導入しようとして、ごにょっていったん詰んだのでHaskell Slackで質問した
朝返信が来てた
TSのBrandedTypesのスライドの清書
2020/3/11
依存型
BabaScriptの論文よんだ
2020/3/10
圏論の道案内.iconの7章を読んだ
公理的集合論をトポスから組む話
その辺の集合論あまり知らないのでちゃんとやりたいmrsekut.icon
2020/3/9
あまりよくわかっていない
2020/3/8
Haskellのテストを見てた
こういう感じでテストをしたい
code:ts
const testCases = [
{
input: 1 + 1,
ast: Plus (Int 1) (Int 1),
eval: 2,
compiled: 2
},
{
input: [2 * 1, 2*1],
ast: Times (Int 2) (Int 1),
eval: 2,
compiled: 2
}
];
testCases.map(t => lexParTest(t)) // lexAndParse(input) === ast
testCases.map(t => evalTest(t)) // eval(ast) === eval
testCases.map(t => compiledTest(t)) // compile(ast) === compiled
2020/3/7
ベル研の伝記みたいな本が届いた
現代のすご技術、だいたいベル研やん、、てなる
Hytlが階乗を求められるようになった
https://gyazo.com/5913ee1dfc124275fad6b9a82544530e
2020/3/6
lazy Kとか幽霊型とか見てた
Hytlを少し触った
if文とboolを扱えるようになった
フィボナッチまであと一歩なんだが、関数の引数の解決に詰まっている
これは動くが
code:hytl
f=x=>x+1
x=1
f(x)
これは動かん
code:hytl
x=1
f=x=>x+1
f(x)
2020/3/5
2020/3/4
この本、この感じでけっこう難しい
最近、知りたいことが多すぎて発散気味だ
新しい本に手を出したりが多い
収束方向に持っていきたい
2020/3/3
ホモトピー型理論の存在を知った
なんもわからんmrsekut.icon
圏論わかってからやっと入り口に立てる感じがした
async/awaitわからん
2020/3/2
ラムダ計算やYコンビネータでの再帰について調べてた
2020/3/1
同じstringでもusernameとurlを区別したいときなどに使う
本当は幽霊型が知りたいのだが、構造的部分型のため、TSを例に取るとこんな感じになってしまう
幽霊型そのものを知るためにはHaskellなどの他の言語を題材にする必要がある