Re: Simple problem in PG's ANSI Common Lisp

Liste des GroupesRevenir à cl scheme 
Sujet : Re: Simple problem in PG's ANSI Common Lisp
De : 643-408-1753 (at) *nospam* kylheku.com (Kaz Kylheku)
Groupes : comp.lang.lisp comp.lang.scheme
Date : 26. Sep 2024, 04:56:44
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <20240925205452.294@kylheku.com>
References : 1
User-Agent : slrn/pre1.0.4-9 (Linux)
On 2024-09-26, B. Pym <Nobody447095@here-nor-there.org> wrote:
paul graham wrote:
>
Or you could write
 
(defun pos+ (lst)
  (let ((i -1))
    (mapcar #'(lambda (x) (+ x (incf i)))
            lst)))
 
Btw, in Arc that would be
 
(def pos+ (lst)
  (let i -1
    (map [+ _ (++ i)] lst)))
>
>
Gauche Scheme
>
(define (pos+ lst)
  (let1 i -1
    (map (~>  (+ (inc! i))) lst)))
>
Given:
>
(define-syntax ->
  (syntax-rules ()
    [(_ x)  x]
    [(_ x (y more ...) z ...)
     (-> (y x more ...) z ...)]
    [(_ x y z ...)
     (-> (y x) z ...)]))
>
(define-syntax ~>
  (syntax-rules ()
    [(_ (func0 a ...) func ...)
     (lambda xs (-> (apply func0 (append xs (list a ...))) func ...))]
    [(_ func0 func ...)
     (lambda xs (-> (apply func0 xs) func ...))]))

TXR Lisp:

1> [mapcar + '(10 20 30) 0]
(10 21 32)

Given: TMF language, and that's it.

--
TXR Programming Language: http://nongnu.org/txr
Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Mastodon: @Kazinator@mstdn.ca

Date Sujet#  Auteur
26 Sep 24 * Re: Simple problem in PG's ANSI Common Lisp2B. Pym
26 Sep 24 `- Re: Simple problem in PG's ANSI Common Lisp1Kaz Kylheku

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal