kb84tkhrのブログ

何を書こうか考え中です あ、あと組織とは関係ないってやつです 個人的なやつ

Reasoned Schemer (50) 10章 alwayso

(define (alwayso) (lambda (s) (lambda () ((disj2 succeed (alwayso)) s))))

しっかり読んだらalwaysoの動きがイメージできるようになるだろうか

まずalwaysoの形を確認
alwaysoは引数のない関数で
substitutionを引数にとって、substitusionのstreamを返すsuspensionを返す
なかなかのややこしさ

続きを読む

Reasoned Schemer (49) 10章 nevero 続き

次はこれ

> (let ((s-inf ((disj2 (== 'olive x) (nevero)) empty-s))) s-inf)
(((#(x) . olive))
 .
 #<procedure:...r/minikanren.scm:52:29>)

(== 'olive x)の値と(nevero)の値がappendされているようではある
ところでこの式って((disj2 (== 'olive x) (nevero)) empty-s)と何が違うの
letの意味あるの

続きを読む

侍巾帷房紈扇 練習

あれこれやらず今日は楷書だけ

左払いがコントロールできなくてボテッとしたりひょろっとしたりする
筆の向きが影響してるような気がするけどどうするのがいいのかは
よくわからない
いろいろ考えすぎておかしなことになっている気もする

特に房がうまくバランスが取れない
どうすればいいの

続きを読む

Macbook AirをUbuntuからmacOSに戻す

・・・Ubuntu入れてみようか(ごくり

Ubuntu (18.04) をMacbook Airに入れてみる - kb84tkhrのブログ

 というわけで先日いろいろ苦労しながらMacbook AirUbuntuを入れましたが
最近Windows PCの利用割合が増えてきたのと
ムスメが学校でパソコン使って調べものしたりしてるらしいのとで
Macbook Airをムスメに譲ってみようかと画策

続きを読む

Reasoned Schemer (48) 10章 disj2

(define (disj2 g1 g2)
  (lambda (s) (append-inf (g1 s) (g2 s))))

goalはsubstitutionを取ってsubstitusionのstreamを返すもの
というのはあってる(当然

でこれってどういう意味なの
っていうかその前にsubstitusionのstreamってなんなのかってのがわかってない
まだ実例は==disj2しか出てきてないしな

続きを読む