[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
comparator in match pattern
From: |
Damien Mattei |
Subject: |
comparator in match pattern |
Date: |
Wed, 28 Jun 2023 10:44:03 +0200 |
hello
does it exists in Guile something like == in Racket,
documented here:
https://docs.racket-lang.org/reference/match.html#%28form._%28%28lib._racket%2Fmatch..rkt%29._~3d~3d%29%29
that allows some code like that:
(match (list container index1-or-keyword index2-or-keyword)
((list c (== /) (== /)) (displayln "T[/ /]"))
((list c i1 (== /)) (displayln "T[i1 /]"))
((list c (== /) i2) (displayln "T[/ i2]"))
((list c i1 i2) (let ((value expr)) ;; to avoid compute it twice
;; normal case
(if (vector? c)
(function-array-n-dim-set! c value (reverse (list
i1 i2))) ;;(array-n-dim-set! array value i1 i2)
(array-set! c i1 i2 value))
value)))
Regards,
Damien
- comparator in match pattern,
Damien Mattei <=
- Re: comparator in match pattern, Vivien Kraus, 2023/06/28
- Re: comparator in match pattern, Damien Mattei, 2023/06/28
- Re: comparator in match pattern, Vivien Kraus, 2023/06/28
- Re: comparator in match pattern, Vivien Kraus, 2023/06/28
- Re: comparator in match pattern, Damien Mattei, 2023/06/28
- Re: comparator in match pattern, Vivien Kraus, 2023/06/28
- Re: comparator in match pattern, Damien Mattei, 2023/06/28
- Re: comparator in match pattern, Damien Mattei, 2023/06/28