[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 92/99: Merge branch 'compile-to-js-2017' into compile-to
From: |
Christopher Allan Webber |
Subject: |
[Guile-commits] 92/99: Merge branch 'compile-to-js-2017' into compile-to-js-rebase |
Date: |
Sun, 10 Oct 2021 21:51:14 -0400 (EDT) |
cwebber pushed a commit to branch compile-to-js-merge
in repository guile.
commit 88f7aa0b3aa48f10a04715c5bc24e2039eae9c6c
Merge: 53e5cf6 05c57a6
Author: Christopher Lemmer Webber <cwebber@dustycloud.org>
AuthorDate: Mon May 10 15:58:15 2021 -0400
Merge branch 'compile-to-js-2017' into compile-to-js-rebase
module/Makefile.am | 48 +
module/language/cps/compile-js.scm | 201 ++++
module/language/cps/spec.scm | 6 +-
module/language/javascript.scm | 274 +++++
module/language/javascript/simplify.scm | 58 +
module/language/javascript/spec.scm | 33 +
module/language/js-il.scm | 138 +++
module/language/js-il/compile-javascript.scm | 430 ++++++++
module/language/js-il/inlining.scm | 230 ++++
module/language/js-il/runtime.js | 1519 ++++++++++++++++++++++++++
module/language/js-il/spec.scm | 31 +
module/scripts/jslink.scm | 215 ++++
12 files changed, 3181 insertions(+), 2 deletions(-)
diff --cc module/Makefile.am
index 41b7709,4d4701f..0ad6a8f
--- a/module/Makefile.am
+++ b/module/Makefile.am
@@@ -27,8 -28,9 +27,9 @@@ modpath
VM_TARGETS := system/vm/assembler.go system/vm/disassembler.go
$(VM_TARGETS): $(top_builddir)/libguile/vm-operations.h
-ice-9/boot-9.go: ice-9/boot-9.scm ice-9/quasisyntax.scm
ice-9/r6rs-libraries.scm
+ice-9/boot-9.go: ice-9/boot-9.scm ice-9/quasisyntax.scm
ice-9/r6rs-libraries.scm ice-9/r7rs-libraries.scm ice-9/read.scm
ice-9/match.go: ice-9/match.scm ice-9/match.upstream.scm
+
srfi/srfi-64.go: srfi/srfi-64.scm srfi/srfi-64/testing.scm
$(nobase_ccache_DATA): ../bootstrap/ice-9/eval.go
diff --cc module/language/cps/spec.scm
index 5864203,d897637..add9bb1
--- a/module/language/cps/spec.scm
+++ b/module/language/cps/spec.scm
@@@ -23,8 -23,8 +23,9 @@@
#:use-module (system base language)
#:use-module (language cps)
#:use-module (language cps intmap)
+ #:use-module (language cps optimize)
#:use-module (language cps compile-bytecode)
+ #:use-module (language cps compile-js)
#:export (cps))
(define (read-cps port env)
@@@ -47,6 -47,7 +48,7 @@@
#:title "CPS Intermediate Language"
#:reader read-cps
#:printer write-cps
- #:compilers `((bytecode . ,compile-bytecode))
+ #:compilers `((bytecode . ,compile-bytecode)
+ (js-il . ,compile-js))
#:for-humans? #f
- )
+ #:lowerer make-cps-lowerer)
- [Guile-commits] 91/99: Update Copyright Headers, (continued)
- [Guile-commits] 91/99: Update Copyright Headers, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 94/99: Add compiler-chooser for CPS spec, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 96/99: Fix cps's choose-compiler to be able to compile javascript, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 98/99: Merge branch 'main' into compile-to-js-merge, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 78/99: Implement Hook Builtins, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 81/99: Argument to make-fluid is optional, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 83/99: Implement variable-bound? builtin, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 88/99: read argument to --depends switch, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 89/99: extra-dependencies go before boot-dependencies, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 90/99: Mention all arguments to guild jslink in --help, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 92/99: Merge branch 'compile-to-js-2017' into compile-to-js-rebase,
Christopher Allan Webber <=
- [Guile-commits] 99/99: Compile cps to bytecode by default, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 24/99: Primitives create multiple argument continuations., Christopher Allan Webber, 2021/10/10
- [Guile-commits] 14/99: Add binop type, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 53/99: Implement Winding & Unwinding, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 63/99: Implement hashtable built-ins, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 66/99: Implement misc built-ins, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 61/99: define! primitive only takes one argument., Christopher Allan Webber, 2021/10/10
- [Guile-commits] 69/99: Unwind prompt frames, Christopher Allan Webber, 2021/10/10
- [Guile-commits] 67/99: Make child structs applicable., Christopher Allan Webber, 2021/10/10
- [Guile-commits] 74/99: Reimplement JS module system primitives., Christopher Allan Webber, 2021/10/10