Comment detail

LL Golf Hole 2 - 文字列に含まれる単語の最初の文字を大文字にする (Nested Flatten)

This comment is reply for 6956 irori: Lazy Kで。666byte :: ...(LL Golf Hole 2 - 文字列に含まれる単語の最初の文字を大文字にする). Go to thread root.

Lazy K で 630 byte。

Lazy K のソースに付属している Lazy K コンパイラを使って以下のソースを Lazy-K に
変形し、適当に整形しました。

(load "./lazier.scm")
(load "./prelude.scm")
(load "./prelude-numbers.scm")

(lazy-def '(pred n)
          '(lambda(f x)
             (n (lambda(a b)(b (a f))) (k x) i)))
(lazy-def '(sub32 x) '(32 pred x))

(lazy-def '(islower x)
          '(car (x cdr (97 (cons #f) (26 (cons #t) (list-of #f) )))))

(lazy-def '(title f x)
          '(cons (car x)
                 (f
                   (and (= 32 (car x)) (islower (car (cdr x)))
                        (cons (sub32 (car (cdr x))) (cdr(cdr x)))
                        (cdr x)))))
(print-as-unlambda (laze '(Y title)))
1
2
3
4
5
6
7
8
9
sii(s`k(s`k`s(s`ks(s`k`si(ss`si`kk)))(s`k`s`kk(s(s`ksk)`k(s(s(s(s(s`k(si`kk)
(s(s(si`kk)`k(si`k`ki))`k(s(s`ksk)i(s(sii)i(s(s`ksk)i)(s`k`s(si`k`ki)k))(s(s
i`kk)`k(sii(s`k(s`k`s(si`k`ki)k)(sii)))))))(s(s(s(s(si`k`ki)`kk)`k(si`k`ki))
`k(s(sii)i(s(s`ksk)i)`s(s`ksk)(s(sii)`s(s`ksk)(s(s`ksk)i))(s`k`s(si`k`ki)k)(
s(s`ksk)(s(s`ksk)i(s(s`ksk)(sii(s(s`ksk)i))))(s`k`s(si`kk)k)(sii(s`k(s`k`s(s
i`k`ki)k)(sii))))))`kk))`k`ki)(s(s`ks(s`k`si(s`kk(s`k(s(s`ksk)i(s(sii)i(s(s`
ksk)i)(s(s`ks(s`k`s`ks(s(s`ks(s`k`s`ks(s`k`s`kk(s(s`ksk)`k(s`k`s`k`si(s`k`s`
kk(s`k`sik)))))))`k`kk)))`k`k`ki)))(s(si`k`ki)`kk)))))(s`kk(s(si`k`ki)`k`ki)
)))(si`k`ki)))))(sii))

Index

Feed

Other

Link

Pathtraq

loading...