1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 12:20:26 +02:00
Commit graph

128 commits

Author SHA1 Message Date
Ludovic Courtès
73f4d8d1d2 Add -o'/--output' option to "guile-tools compile".
* module/system/base/compile.scm (compile-file): Add optional
  OUTPUT-FILE argument.

* scripts/compile (fail): New procedure.
  (%options): Add `-o'/`--output' option.
  (compile): Handle `-o'.
2009-02-21 00:38:06 +01:00
Ludovic Courtès
6d77c6efa0 Add -L'/--load-path' option to "guile-tools compile".
* scripts/compile (%options): Add `-L'/`--load-path'.
  (parse-args): Have `load-path' default to '().
  (compile): Handle `--load-path' option.
2009-02-20 16:19:12 +01:00
Ludovic Courtès
2308dce1be Change "guile-tools compile" to use SRFI-37 to process options.
* scripts/compile (%options): Rewrite in SRFI-37 style.
  (parse-args): New procedure.
  (compile): Update to SRFI-37.
2009-02-20 16:11:49 +01:00
Andy Wingo
9bb8012dd6 remove conv.scm, disasm.scm; objcode->bytecode rename
* module/system/vm/Makefile.am:
* module/system/vm/conv.scm:
* module/system/vm/disasm.scm: Remove these modules, as their
  functionality is now in (language ...).

* libguile/objcodes.h:
* libguile/objcodes.c:
* module/system/vm/objcode.scm: Rename objcode->u8vector to
  objcode->bytecode.

* module/system/vm/frame.scm:
* module/language/bytecode/spec.scm: Fix for objcode->bytecode.

* scripts/disassemble:
* testsuite/run-vm-tests.scm: Fix for (system vm disasm) removal.

* module/system/repl/command.scm: Use the right disassembler.
2009-01-30 14:36:49 +01:00
Andy Wingo
3de80ed52f recompiling with compile environments, fluid languages, cleanups
* ice-9/boot-9.scm (compile-time-environment): Remove definition from
  boot-9 -- instead, autoload it and `compile' from (system base
  compile).

* libguile/objcodes.h:
* libguile/objcodes.c (scm_objcode_to_program): Add an optional argument,
  `external', the external list to set on the returned program.

* libguile/vm-i-system.c (externals): New instruction, returns the
  external list. Only used by (compile-time-environment).

* libguile/vm.c (scm_load_compiled_with_vm): Adapt to
  scm_objcode_to_program change.

* module/language/scheme/translate.scm (translate): Actually pay
  attention to the environment passed as an argument.
  (custom-transformer-table): Expand out (compile-time-environment) to
  something that can be passed to `compile'.

* module/system/base/compile.scm (*current-language*): Instead of
  hard-coding `scheme' in various places, use a current language fluid,
  initialized to `scheme'.
  (compile-file, load-source-file): Adapt to *current-language*.
  (load-source-file): Ada
  (scheme-eval): Removed, no one used this.
  (compiled-file-name): Don't hard-code "scm" and "go"; instead use the
  %load-extensions and %load-compiled-extensions.
  (cenv-module, cenv-ghil-env, cenv-externals): Some accessors for
  compile-time environments.
  (compile-time-environment): Here we define (compile-time-environment)
  to something that will return #f; the compiler however produces
  different code as noted above.
  (compile): New function, compiles an expression into a thunk, then runs
  the thunk to get the value. Useful for procedures. The optional second
  argument can be either a module or a compile-time-environment; in the
  latter case, we can recompile even with lexical bindings.
  (compile-in): If the env specifies a module, set that module for the
  duration of the compilation.

* module/system/base/syntax.scm (%compute-initargs): Fix a bug where the
  default value for a field would always replace a user-supplied value.
  Whoops.

* module/system/il/ghil.scm (ghil-env-dereify): New function, takes the
  result of ghil-env-reify and turns it back into a GHIL environment.

* scripts/compile (compile): Remove some of the tricky error handling, as
  the library procedures handle this for us.

* test-suite/tests/compiler.test: Add a test for the dynamic compilation
  bits.
2008-10-30 10:57:36 +01:00
Andy Wingo
999f1b26e7 Merge commit 'origin/master' into vm
Conflicts:

	doc/Makefile.am
	ice-9/Makefile.am
	libguile/gc.c
2008-09-30 21:12:16 +02:00
Ludovic Courtès
61db429e25 Add `ChangeLog-2008' files to the distribution. 2008-09-12 21:57:52 +02:00
Ludovic Courtès
afb59d75b8 Rename ChangeLog' files to ChangeLog-2008'. 2008-09-12 21:49:58 +02:00
Ludovic Courtès
85ca88c68b Remove `.cvsignore' files. 2008-09-11 21:28:21 +02:00
Andy Wingo
7618201efd final de-:prefixification
* scripts/compile: Don't (read-set! keywords 'prefix) here either.
2008-09-09 07:13:14 +02:00
Andy Wingo
72f7452826 move guilec and guile-disasm to be guile-tools scripts
* .gitignore: Some touchups.

* configure.in:
* src/.cvsignore:
* src/Makefile.am:
* Makefile.am: No more src/.

* scripts/compile:
* scripts/disassemble: Moved here from src/ and changed into guile-tools
  scripts.

* scripts/Makefile.am: Add the new scriptes.

* guilec.mk: Adapt to new way of invoking the compiler.
2008-08-27 17:17:30 -07:00
Kevin Ryde
6e7d5622ee merge from 1.8 branch 2006-04-16 23:37:40 +00:00
Marius Vollmer
92205699d0 The FSF has a new address. 2005-05-23 19:57:22 +00:00
Marius Vollmer
51c45eb666 *** empty log message *** 2004-11-09 13:54:32 +00:00
Marius Vollmer
a04906d98d (process-multiline-directive): Allow the fname attribute to a sequence
of strings and append them all to form the fname.  This is needed for
string literals like "u8""vector?".
2004-11-09 13:54:22 +00:00
Marius Vollmer
0b49c6452b *** empty log message *** 2004-09-08 16:20:21 +00:00
Marius Vollmer
be2540fa56 (scripts_sources): Added snarf-guile-m4-docs. 2004-09-08 16:18:29 +00:00
Kevin Ryde
6002ebaf0e *** empty log message *** 2004-08-06 00:04:14 +00:00
Kevin Ryde
6c60ac51ed (parse-message): Correction to header
continuation, loop with read-line not cdr lines.
2004-08-06 00:03:11 +00:00
Rob Browning
b2cbe8d8a2 *** empty log message *** 2002-12-09 00:51:53 +00:00
Rob Browning
c0784b410b * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION. 2002-12-09 00:46:01 +00:00
Neil Jerram
daeea2a9fb Make (scripts lint) announce resolved module name. 2002-10-26 18:58:17 +00:00
Marius Vollmer
5e405a6055 *** empty log message *** 2002-10-05 11:57:41 +00:00
Marius Vollmer
f4e093308a (end-multiline): Use '*function-name*' instead of nonexisting 'name'. 2002-10-05 11:57:35 +00:00
Rob Browning
9bc548798d *** empty log message *** 2002-10-05 04:21:04 +00:00
Rob Browning
201e7da791 * summarize-guile-TODO (as-leaf): make #\: a char-set. 2002-10-05 04:11:51 +00:00
Thien-Thi Nguyen
9664b7ef6e *** empty log message *** 2002-05-19 05:12:42 +00:00
Thien-Thi Nguyen
ef018514da (group-diff): Also output +N and -N adds and subs details, respectively. 2002-05-19 05:12:04 +00:00
Thien-Thi Nguyen
713526ad21 *** empty log message *** 2002-05-13 21:45:57 +00:00
Thien-Thi Nguyen
e4af2baf8e (scan-api): No longer include timestamp. 2002-05-13 21:45:12 +00:00
Thien-Thi Nguyen
faa2075ab1 *** empty log message *** 2002-05-13 10:14:42 +00:00
Thien-Thi Nguyen
3a56374157 (scripts_sources): Add api-diff and read-rfc822. 2002-05-13 10:14:06 +00:00
Thien-Thi Nguyen
a8aa1fc1a9 *** empty log message *** 2002-05-13 10:12:48 +00:00
Thien-Thi Nguyen
57737e2449 Initial revision. 2002-05-13 10:12:14 +00:00
Thien-Thi Nguyen
9a9500ad2c *** empty log message *** 2002-05-12 03:47:32 +00:00
Thien-Thi Nguyen
4ab4e780c6 Use modules (ice-9 format), (ice-9 getopt-long).
Autoload module (srfi srfi-13).
No longer export `diff-alists'.

(diff, diff-alists, display-list): Remove.
(put, get, read-api-alist-file, hang-by-the-roots, diff?,
diff+note!, group-diff): New.
(api-diff): Rewrite.
2002-05-12 03:46:26 +00:00
Thien-Thi Nguyen
717bd14812 *** empty log message *** 2002-05-11 19:46:12 +00:00
Thien-Thi Nguyen
94a972ac31 (scan-api): Fix bug: No longer omit C' and Scheme' in
groups in the presence of the grouper.
2002-05-11 19:45:27 +00:00
Thien-Thi Nguyen
54352a3464 *** empty log message *** 2002-05-10 22:18:33 +00:00
Thien-Thi Nguyen
e366d58b79 (add-props): New proc.
(make-grok-proc): Renamed from `make-grok-hook'.
(make-members-proc): Renamed from `make-members-hook'.
(make-grouper): Renamed from `make-grouping-hook'.  Update callers.
Add handling for multiple grouping-defs files.
(scan-api): Add handling for multiple grouping-defs files.
Cache `symbol->string' result; adjust `sort' usage.
2002-05-10 22:17:39 +00:00
Thien-Thi Nguyen
06dba652b0 *** empty log message *** 2002-05-09 16:28:22 +00:00
Thien-Thi Nguyen
94173d5f20 (scan-C!): Use more robust regexp. 2002-05-09 16:27:40 +00:00
Thien-Thi Nguyen
4c2657ed73 *** empty log message *** 2002-05-08 20:20:45 +00:00
Thien-Thi Nguyen
73b8d652ef Remove top-level `debug-enable' form. 2002-05-08 20:19:22 +00:00
Thien-Thi Nguyen
d1d0c7afa2 Add TODO comment; nfc. 2002-05-08 20:18:12 +00:00
Thien-Thi Nguyen
b6c7676343 *** empty log message *** 2002-05-08 13:01:29 +00:00
Thien-Thi Nguyen
d29388060b (scan-api): Handle case where `grouping-hook' is #f. 2002-05-08 13:00:57 +00:00
Thien-Thi Nguyen
2b080aed49 *** empty log message *** 2002-05-08 12:50:22 +00:00
Thien-Thi Nguyen
ac898f8dc4 (scripts_sources): Add "scan-api". 2002-05-08 12:50:01 +00:00
Thien-Thi Nguyen
091cf411a6 Initial revision. 2002-05-08 12:49:37 +00:00