gexp: Add 'let-system'.
authorLudovic Courtès <ludo@gnu.org>
Tue, 14 Nov 2017 09:16:22 +0000 (10:16 +0100)
committerTobias Geerinckx-Rice <me@tobias.gr>
Sun, 17 May 2020 13:16:48 +0000 (15:16 +0200)
commit8d408d5ae4af4c90eee7ff241639aed00b03f887
tree7e275744ca1e9cfe09ced013ef00ca15f386f5dc
parent56eafb812fd5cc4168479436a9e04b13d30eb77a
gexp: Add 'let-system'.

* guix/gexp.scm (<system-binding>): New record type.
(let-system): New macro.
(system-binding-compiler): New procedure.
(default-expander): Add 'self-quoting?' case.
(self-quoting?): New procedure.
(lower-inputs): Add 'filterm'.  Pass the result of
'mapm/accumulate-builds' through FILTERM.
(gexp->sexp)[self-quoting?]: Remove.
* tests/gexp.scm ("let-system", "let-system, target")
("let-system, ungexp-native, target")
("let-system, nested"): New tests.
* doc/guix.texi (G-Expressions): Document it.
.dir-locals.el
doc/guix.texi
guix/gexp.scm
tests/gexp.scm