mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
Add 'for-humans?' flag to <language> specifications.
* module/system/base/language.scm (<language>): Add 'for-humans?' field, and export new 'language-for-humans?' predicate. * doc/ref/compiler.texi (Compiler Tower): Document. * module/language/assembly/spec.scm, module/language/bytecode/spec.scm, module/language/glil/spec.scm, module/language/objcode/spec.scm, module/language/tree-il/spec.scm, module/language/value/spec.scm: Mark these languages as 'for-humans?'.
This commit is contained in:
parent
13ff681c33
commit
b34e25359a
8 changed files with 19 additions and 9 deletions
|
@ -55,7 +55,8 @@ They are registered with the @code{define-language} form.
|
||||||
@deffn {Scheme Syntax} define-language @
|
@deffn {Scheme Syntax} define-language @
|
||||||
name title reader printer @
|
name title reader printer @
|
||||||
[parser=#f] [compilers='()] [decompilers='()] [evaluator=#f] @
|
[parser=#f] [compilers='()] [decompilers='()] [evaluator=#f] @
|
||||||
[joiner=#f] [make-default-environment=make-fresh-user-module]
|
[joiner=#f] [for-humans?=#t] @
|
||||||
|
[make-default-environment=make-fresh-user-module]
|
||||||
Define a language.
|
Define a language.
|
||||||
|
|
||||||
This syntax defines a @code{#<language>} object, bound to @var{name}
|
This syntax defines a @code{#<language>} object, bound to @var{name}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; Guile Virtual Machine Assembly
|
;;; Guile Virtual Machine Assembly
|
||||||
|
|
||||||
;; Copyright (C) 2001, 2009, 2010 Free Software Foundation, Inc.
|
;; Copyright (C) 2001, 2009, 2010, 2013 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;;;; This library is free software; you can redistribute it and/or
|
;;;; This library is free software; you can redistribute it and/or
|
||||||
;;;; modify it under the terms of the GNU Lesser General Public
|
;;;; modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -31,4 +31,5 @@
|
||||||
#:parser read ;; fixme: make a verifier?
|
#:parser read ;; fixme: make a verifier?
|
||||||
#:compilers `((bytecode . ,compile-bytecode))
|
#:compilers `((bytecode . ,compile-bytecode))
|
||||||
#:decompilers `((bytecode . ,decompile-bytecode))
|
#:decompilers `((bytecode . ,decompile-bytecode))
|
||||||
|
#:for-humans? #f
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; Guile Lowlevel Intermediate Language
|
;;; Guile Lowlevel Intermediate Language
|
||||||
|
|
||||||
;; Copyright (C) 2001, 2009, 2010 Free Software Foundation, Inc.
|
;; Copyright (C) 2001, 2009, 2010, 2013 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;;;; This library is free software; you can redistribute it and/or
|
;;;; This library is free software; you can redistribute it and/or
|
||||||
;;;; modify it under the terms of the GNU Lesser General Public
|
;;;; modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -35,4 +35,5 @@
|
||||||
#:printer write
|
#:printer write
|
||||||
#:compilers `((objcode . ,compile-objcode))
|
#:compilers `((objcode . ,compile-objcode))
|
||||||
#:decompilers `((objcode . ,decompile-objcode))
|
#:decompilers `((objcode . ,decompile-objcode))
|
||||||
|
#:for-humans? #f
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; Guile Lowlevel Intermediate Language
|
;;; Guile Lowlevel Intermediate Language
|
||||||
|
|
||||||
;; Copyright (C) 2001, 2009, 2010 Free Software Foundation, Inc.
|
;; Copyright (C) 2001, 2009, 2010, 2013 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;;;; This library is free software; you can redistribute it and/or
|
;;;; This library is free software; you can redistribute it and/or
|
||||||
;;;; modify it under the terms of the GNU Lesser General Public
|
;;;; modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -37,4 +37,6 @@
|
||||||
#:printer write-glil
|
#:printer write-glil
|
||||||
#:parser parse-glil
|
#:parser parse-glil
|
||||||
#:compilers `((assembly . ,compile-asm))
|
#:compilers `((assembly . ,compile-asm))
|
||||||
#:decompilers `((assembly . ,decompile-assembly)))
|
#:decompilers `((assembly . ,decompile-assembly))
|
||||||
|
#:for-humans? #f
|
||||||
|
)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; Guile Lowlevel Intermediate Language
|
;;; Guile Lowlevel Intermediate Language
|
||||||
|
|
||||||
;; Copyright (C) 2001, 2009, 2010, 2011 Free Software Foundation, Inc.
|
;; Copyright (C) 2001, 2009, 2010, 2011, 2013 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;;;; This library is free software; you can redistribute it and/or
|
;;;; This library is free software; you can redistribute it and/or
|
||||||
;;;; modify it under the terms of the GNU Lesser General Public
|
;;;; modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -79,4 +79,5 @@
|
||||||
#:printer write-objcode
|
#:printer write-objcode
|
||||||
#:compilers `((value . ,objcode->value))
|
#:compilers `((value . ,objcode->value))
|
||||||
#:decompilers `((value . ,decompile-value))
|
#:decompilers `((value . ,decompile-value))
|
||||||
|
#:for-humans? #f
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; Tree Intermediate Language
|
;;; Tree Intermediate Language
|
||||||
|
|
||||||
;; Copyright (C) 2009, 2010 Free Software Foundation, Inc.
|
;; Copyright (C) 2009, 2010, 2013 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;;;; This library is free software; you can redistribute it and/or
|
;;;; This library is free software; you can redistribute it and/or
|
||||||
;;;; modify it under the terms of the GNU Lesser General Public
|
;;;; modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -42,4 +42,5 @@
|
||||||
#:parser parse-tree-il
|
#:parser parse-tree-il
|
||||||
#:joiner join
|
#:joiner join
|
||||||
#:compilers `((glil . ,compile-glil))
|
#:compilers `((glil . ,compile-glil))
|
||||||
|
#:for-humans? #f
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; Guile Lowlevel Intermediate Language
|
;;; Guile Lowlevel Intermediate Language
|
||||||
|
|
||||||
;; Copyright (C) 2001, 2010 Free Software Foundation, Inc.
|
;; Copyright (C) 2001, 2010, 2013 Free Software Foundation, Inc.
|
||||||
|
|
||||||
;;;; This library is free software; you can redistribute it and/or
|
;;;; This library is free software; you can redistribute it and/or
|
||||||
;;;; modify it under the terms of the GNU Lesser General Public
|
;;;; modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -26,4 +26,5 @@
|
||||||
#:title "Values"
|
#:title "Values"
|
||||||
#:reader #f
|
#:reader #f
|
||||||
#:printer write
|
#:printer write
|
||||||
|
#:for-humans? #f
|
||||||
)
|
)
|
||||||
|
|
|
@ -25,7 +25,8 @@
|
||||||
language-name language-title language-reader
|
language-name language-title language-reader
|
||||||
language-printer language-parser
|
language-printer language-parser
|
||||||
language-compilers language-decompilers language-evaluator
|
language-compilers language-decompilers language-evaluator
|
||||||
language-joiner language-make-default-environment
|
language-joiner language-for-humans?
|
||||||
|
language-make-default-environment
|
||||||
|
|
||||||
lookup-compilation-order lookup-decompilation-order
|
lookup-compilation-order lookup-decompilation-order
|
||||||
invalidate-compilation-cache! default-environment
|
invalidate-compilation-cache! default-environment
|
||||||
|
@ -49,6 +50,7 @@
|
||||||
(decompilers '())
|
(decompilers '())
|
||||||
(evaluator #f)
|
(evaluator #f)
|
||||||
(joiner #f)
|
(joiner #f)
|
||||||
|
(for-humans? #t)
|
||||||
(make-default-environment make-fresh-user-module))
|
(make-default-environment make-fresh-user-module))
|
||||||
|
|
||||||
(define-macro (define-language name . spec)
|
(define-macro (define-language name . spec)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue