Wie kann ich diese mit cons
erstellte Liste in einen Vektor ändern?Scheme: Wie kann ich eine Liste mit Widerständen in einen Vektor ändern?
((p b p b p b p b)
(b p b p b p b p)
(p b p b p b p b)
(b p b p b p b p)
(p b p b p b p b)
(b p b p b p b p)
(p b p b p b p b)
(b p b p b p b p))
Dies ist mein Code:
(define b "black") (define w "white") (define (board) (letrec ((ti (lambda (x) (if (eq? x 8) '() (cons (lh x 0) (ti (+ 1 x)))))) (lh (lambda (x y) (if (eq? y 8) '() (cons (if (odd? (+ x y)) 'b 'w) (lh x (+ 1 y))))))) (ti 0)))
Oder andersherum, '(Liste-> Vektor (Kartenliste-> Vektorzeilen))', wäre viel konsistenter. :-) –
@Chris: Konsequent mit was? Soweit ich sagen kann, gibt es keine wesentlichen Vorteile im Vergleich zu den anderen. – sepp2k
Konsequent, dass Sie "list-> vector" an beiden Orten verwenden, nicht "list-> vector" plus "vector-map". :-) Es ist eine Kleinigkeit, aber genau das, was mir auffällt. –