1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 03:40:34 +02:00

generate psyntax-pp in canonical form

* module/ice-9/compile-psyntax.scm (source): Canonicalize after
  optimizing.  The optimizer should be a little more clever, but
  currently fix-letrec outputs some non-canonical forms.

* module/ice-9/psyntax-pp.scm: Regenerate.
This commit is contained in:
Andy Wingo 2011-09-28 19:42:32 +02:00
parent b275fb2691
commit 014de9e25d
2 changed files with 30782 additions and 31997 deletions

View file

@ -1,6 +1,6 @@
;;; -*- mode: scheme; coding: utf-8; -*-
;;;
;;; Copyright (C) 2009, 2010 Free Software Foundation, Inc.
;;; Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
;;;
;;; This library is free software; you can redistribute it and/or
;;; modify it under the terms of the GNU Lesser General Public
@ -18,6 +18,7 @@
(use-modules (language tree-il)
(language tree-il optimize)
(language tree-il canonicalize)
(ice-9 pretty-print))
(let ((source (list-ref (command-line) 1))
@ -34,10 +35,11 @@
(close-port in))
(begin
(pretty-print (tree-il->scheme
(optimize!
(macroexpand x 'c '(compile load eval))
(current-module)
'()))
(canonicalize!
(optimize!
(macroexpand x 'c '(compile load eval))
(current-module)
'())))
out)
(newline out)
(loop (read in))))))

File diff suppressed because it is too large Load diff