1
; NOTE: This directory has been superseded by directory books/hacking/
17
defstruct-parsing.acl2
18
defstruct-parsing.lisp
34
(:TITLE "Hacking & Extending ACL2")
35
(:AUTHOR/S "Peter C. Dillinger") ; With guidance & advice from Matt Kaufmann and Panagiotis Manolios
36
(:KEYWORDS ; non-empty list of keywords, case-insensitive
37
"book contributions" "contributed books"
38
"hacking" "system" "defcode" "redefun" "trust tags" "ttags"
39
"extensions" "raw mode" "raw lisp"
42
"NOTE: This directory has been superseded by directory books/hacking/
45
This support code is intended as a library to those who wish to use
46
trust tags to modify or extend core ACL2 behavior. We add some other
47
constructs to the set of low-level tools enabled by trust tags that make
48
system modifications easier to specify and keep track of. We also offer
49
some high-level tools that offer significant benefits (in both ease &
50
soundness) over more direct methods of overriding behavior. See the
51
comments in Readme.lsp and individual files for more info.
53
(:PERMISSION ; author/s permission for distribution and copying:
54
"Copyright (C) 2007 Peter C. Dillinger, the Georgia Tech Research Corporation,
55
and Northeastern University
57
This program is free software; you can redistribute it and/or
58
modify it under the terms of the GNU General Public License
59
as published by the Free Software Foundation; either version 2
60
of the License, or (at your option) any later version.
62
This program is distributed in the hope that it will be useful,
63
but WITHOUT ANY WARRANTY; without even the implied warranty of
64
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
65
GNU General Public License for more details.
67
You should have received a copy of the GNU General Public License
68
along with this program; if not, write to the Free Software
69
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
73
Supporting materials for "Hacking & Extending ACL2" for 2007 ACL2 Workshop
76
With guidance & advice from Matt Kaufmann and Panagiotis Manolios
78
Note that the tops of most of these files will look funny unless edited in
79
ACL2s. The "preamble" (which generates the .acl2 file) is embedded in a
80
special comment in the .lisp file.
84
ACL2 input to certify all these books
87
Package & documentation topic/section used in preambles
91
Book that includes all of the below
94
Book for bridging the gap between ACL2 and raw Lisp
97
Book for the DEFCODE construct (ttag required)
100
Used internally in defcode.lisp
102
defstruct-parsing.lisp
103
Book for parsing defstruct calls
106
Basic book with hacking constructs
109
Book for making raw definitions in a nice way
112
Book for overriding and rewriting existing definitions
115
Book with tools for rewriting and copying existing code
116
(used by redefun.lisp)
119
Book with constructs to do ttag subsumption
122
An example application of this stuff to allow extension of table
123
guards, including the acl2-defaults-table.