[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet-scheme] 04/16: Add infrastructure for Racketifying source code.
From: |
gnunet |
Subject: |
[gnunet-scheme] 04/16: Add infrastructure for Racketifying source code. |
Date: |
Mon, 05 Sep 2022 21:33:56 +0200 |
This is an automated email from the git hooks/post-receive script.
maxime-devos pushed a commit to branch master
in repository gnunet-scheme.
commit 9381d0d2b56fe664778f1d27a7c1a1ea08930b75
Author: Maxime Devos <maximedevos@telenet.be>
AuthorDate: Sat Sep 3 21:34:52 2022 +0200
Add infrastructure for Racketifying source code.
.gitignore: Ignore generated .ss
Makefile.am (racketify,guilify): New targets.
* doc/contributing.tm: Start documenting Racket-Guile compatibility.
---
.gitignore | 3 ++-
Makefile.am | 7 +++++++
doc/contributing.tm | 15 ++++++++++++++-
3 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/.gitignore b/.gitignore
index d3e08a3..0965466 100644
--- a/.gitignore
+++ b/.gitignore
@@ -31,4 +31,5 @@
/doc/scheme-gnunet-*.png
/.cache
/.TeXmacs
-/.dbus
\ No newline at end of file
+/.dbus
+*.ss
\ No newline at end of file
diff --git a/Makefile.am b/Makefile.am
index 3a643ea..a9ebd4e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -247,3 +247,10 @@ nodist_pdf_DATA = doc/scheme-gnunet.pdf
clean-local:
rm -f $(GOBJECTS)
+
+# Convert the code from Guile Scheme into Racket Scheme
+racketify:
+ sed -i -e 's/;#!r6rs/#!r6rs/' $(modules) && for m in $(modules); do ln
-f -s "$$(basename "$$m")" "$$(echo "$$m" | sed s/\\.scm/.ss/)"; done
+# Convert the code from Racket Scheme to Guile Scheme
+guilify:
+ sed -i -e 's/#!r6rs/;#!r6rs/' $(modules)
diff --git a/doc/contributing.tm b/doc/contributing.tm
index 0a8863e..d79bce2 100644
--- a/doc/contributing.tm
+++ b/doc/contributing.tm
@@ -18,7 +18,10 @@
<item><hlink|GNU Guile|https://www.gnu.org/software/guile/> (at least
version 3), with the patch from
<slink|https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49623>
- applied
+ applied <todo|make optional, choice between Racket and Guile>
+
+ <item>Optionally, Racket <todo|link, version, finish>, to build the
+ Racket port
<item><hlink|Purely Functional Data Structures in Scheme
(pfds)|https://github.com/ijp/pfds/>
@@ -45,6 +48,8 @@
./configure
+ <todo|make racketify>
+
make
make check
@@ -58,6 +63,8 @@
<\shell-code>
$ guile -L . -C . -l examples/nse-web.scm
+
+ \ \ <todo|TODO racket equivalent>
</shell-code>
<subsection|Authenticating new source code><index|authentication>
@@ -116,6 +123,12 @@
<verbatim|SCM_TESTS> in <verbatim|Makefile.am> and use <scm|srfi
:64>.<space|1em>To run the test suite, run <verbatim|make check>.
+ <section|Writing portable Scheme code>
+
+ Scheme-GNUnet aims to be portable between Schemes. It primarily supports
+ Guile Scheme, but also supports Racket Scheme. However, the two different
+ Schemes are incompatible.
+
<section|Contact>
Scheme-GNUnet is currently maintained on NotABug:
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [gnunet-scheme] branch master updated (2b653c6 -> bf87f7d), gnunet, 2022/09/05
- [gnunet-scheme] 02/16: doc: Document maybe-send-control-message!*., gnunet, 2022/09/05
- [gnunet-scheme] 01/16: doc: Correct maybe-send-control-message! documentation., gnunet, 2022/09/05
- [gnunet-scheme] 03/16: hat-let: Port to Racket Scheme., gnunet, 2022/09/05
- [gnunet-scheme] 04/16: Add infrastructure for Racketifying source code.,
gnunet <=
- [gnunet-scheme] 09/16: SCM_LOG_DRIVER., gnunet, 2022/09/05
- [gnunet-scheme] 12/16: Makefile.am: Reuse old .ss when still good., gnunet, 2022/09/05
- [gnunet-scheme] 11/16: Don't mutate source files, instead make new ones., gnunet, 2022/09/05
- [gnunet-scheme] 10/16: tests/form: Use Unicode escapes instead of the unportable \x...., gnunet, 2022/09/05
- [gnunet-scheme] 07/16: Makefile.am: Enable --r7rs, for the r7rs-symbols., gnunet, 2022/09/05
- [gnunet-scheme] 05/16: Add ;#!r6rs comments., gnunet, 2022/09/05
- [gnunet-scheme] 14/16: Merge branch 'racket-port', gnunet, 2022/09/05
- [gnunet-scheme] 15/16: Update version number., gnunet, 2022/09/05
- [gnunet-scheme] 08/16: Use r7rs-symbols, for compatibility with Racket., gnunet, 2022/09/05
- [gnunet-scheme] 13/16: doc: Abandon the Racket port for now because of complications., gnunet, 2022/09/05