[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Scheme+ version 7.3 release
|
From: |
Damien Mattei |
|
Subject: |
Scheme+ version 7.3 release |
|
Date: |
Mon, 8 Jan 2024 15:43:17 +0100 |
Hello,
i present the release version 7.3 of Scheme+ for Guile,
Scheme+ is an extension of the syntax of the Scheme language.
Scheme+ is 100% compatible with Scheme.
Scheme+ is available here:
https://damien-mattei.github.io/Scheme-PLUS-for-Guile/Scheme+io.html
Here is a little example from the Scheme+ for Guile source code itself.
;; split the expression using slice as separator(def
(parse-square-brackets-arguments args-brackets)
(when (null? args-brackets)
(return args-brackets))
(declare result partial-result)
(def (psba args) ;; parse square brackets arguments
;;(display partial-result) (newline)
(when (null? args)
;;(display "before !*prec") (newline)
{result <- (append result (!*prec partial-result))} ;; !*prec is
defined in scheme-infix.scm
;;(display "after !*prec") (newline)
;;(display result) (newline)
(return-rec result)) ;; return from all recursive calls
{fst <+ (car args)}
(if (equal? slice fst)
($>
(when (not (null? partial-result))
{result <- (append result (!*prec partial-result))} ;;
evaluate
and store the expression
{partial-result <- '()}) ;; empty for the next possible
portion
between slice operator
{result <- (append result (list fst))}) ;; append the slice operator
{partial-result <- (append partial-result (list fst))}) ;; not a
slice operator but append it
(psba (cdr args))) ;; end def, recurse
(psba args-brackets)) ;; initial call
A full example is available here:
https://github.com/damien-mattei/AI_Deep_Learning/blob/9deadf6370558a5ba43cd9743e89630e19b5bb5a/exo_retropropagationNhidden_layers_matrix_v2_by_vectors4guile%2B.scm#L71
for now Scheme+ is also available for:
Racket :
https://damien-mattei.github.io/Scheme-PLUS-for-Racket/Scheme+io.html
Kawa: https://github.com/damien-mattei/Scheme-PLUS-for-Kawa
Damien
| [Prev in Thread] |
Current Thread |
[Next in Thread] |
- Scheme+ version 7.3 release,
Damien Mattei <=