[ prog / sol / mona ]

prog


The Forced Indentation Of Code

189 2022-09-12 11:22

Connector >>119 version of the tower of memel >>46 >>49

scheme@(guile-user)> (display ((lambda (rec xjoin extract index chars n) ((lambda (xjoin lines columns) ((lambda (symbol) (xjoin lines (lambda (k) (string-append (xjoin columns (lambda (j) (symbol k j)) "") "\n")) "")) (lambda (k j) (extract chars (index lines columns k j) 1)))) (lambda (n fun sep) (rec xjoin n fun sep "")) (+ 2 (* 2 n)) (+ 3 (* 4 n)))) (lambda (f . args) (apply f (cons f args))) (lambda (self n fun sep acc) (if (<= n 0) "" (if (= n 1) (string-append (fun 0) acc) (self self (- n 1) fun sep (string-append sep (fun (- n 1)) acc))))) (lambda (str pos len) (substring str pos (+ pos len))) ((lambda (split corner) (lambda (lines columns k j) (apply (lambda (k up j left) (if (= j 0) (if (= k 1) 0 1) ((lambda (jd jm) (if (<= jd (- k 3)) 1 (if (or (= jd (- k 2)) (= jd k)) (if (= jm 1) 0 (corner 6 up -2 left -1)) (if (= jd (- k 1)) (if (= jm 1) 1 (corner 3 up 2 left 1)) (if (= jm 1) 0 2))))) (quotient (- j 1) 2) (modulo (- j 1) 2)))) `(,@(split lines k 1) ,@(split columns j 0))))) (lambda (lines k adjust) ((lambda (l2) (if (< k l2) `(,(- l2 k) #t) `(,(+ (- k l2) adjust) #f))) (quotient lines 2))) (lambda (from up upstep left leftstep) (+ from (if up upstep 0) (if left leftstep 0)))) " ─│┌┐└┘" 10))
┘ ┌─────────────────────────────────────┐ └
┌─┘ ┌─────────────────────────────────┐ └─┐
│ ┌─┘ ┌─────────────────────────────┐ └─┐ │
│ │ ┌─┘ ┌─────────────────────────┐ └─┐ │ │
│ │ │ ┌─┘ ┌─────────────────────┐ └─┐ │ │ │
│ │ │ │ ┌─┘ ┌─────────────────┐ └─┐ │ │ │ │
│ │ │ │ │ ┌─┘ ┌─────────────┐ └─┐ │ │ │ │ │
│ │ │ │ │ │ ┌─┘ ┌─────────┐ └─┐ │ │ │ │ │ │
│ │ │ │ │ │ │ ┌─┘ ┌─────┐ └─┐ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ ┌─┘ ┌─┐ └─┐ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ ┌─┘ └─┐ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ └─┐ ┌─┘ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ └─┐ └─┘ ┌─┘ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ └─┐ └─────┘ ┌─┘ │ │ │ │ │ │ │
│ │ │ │ │ │ └─┐ └─────────┘ ┌─┘ │ │ │ │ │ │
│ │ │ │ │ └─┐ └─────────────┘ ┌─┘ │ │ │ │ │
│ │ │ │ └─┐ └─────────────────┘ ┌─┘ │ │ │ │
│ │ │ └─┐ └─────────────────────┘ ┌─┘ │ │ │
│ │ └─┐ └─────────────────────────┘ ┌─┘ │ │
│ └─┐ └─────────────────────────────┘ ┌─┘ │
└─┐ └─────────────────────────────────┘ ┌─┘
┐ └─────────────────────────────────────┘ ┌
scheme@(guile-user)> 
267


VIP:

do not edit these