Chris Hanson [Sun, 29 Apr 2007 18:26:20 +0000 (18:26 +0000)]
Fix typos in previous change.
Chris Hanson [Sun, 29 Apr 2007 18:24:35 +0000 (18:24 +0000)]
Suppress loading/dumping messages for most files.
Chris Hanson [Sun, 29 Apr 2007 18:01:44 +0000 (18:01 +0000)]
After "make c" completes, generate a file "liarc.stamp" and use that
file to change the default value of "--enable-native-code" in
"./configure".
Chris Hanson [Sun, 29 Apr 2007 17:56:15 +0000 (17:56 +0000)]
Eliminate unused ${FULL}.
Chris Hanson [Sun, 29 Apr 2007 15:44:00 +0000 (15:44 +0000)]
Allow two-part version numbers.
Chris Hanson [Sat, 28 Apr 2007 01:58:14 +0000 (01:58 +0000)]
Signal error if liarc used without dynamic library support.
Chris Hanson [Wed, 25 Apr 2007 14:06:14 +0000 (14:06 +0000)]
Eliminate distinction between pure and constant.
Chris Hanson [Tue, 24 Apr 2007 14:46:00 +0000 (14:46 +0000)]
Fix examples in DEFINE-CLASS definition.
Chris Hanson [Tue, 24 Apr 2007 05:32:01 +0000 (05:32 +0000)]
Changes to get v15 working in win32.
Chris Hanson [Sun, 22 Apr 2007 18:04:52 +0000 (18:04 +0000)]
Bump version number.
Chris Hanson [Sun, 22 Apr 2007 16:41:01 +0000 (16:41 +0000)]
When installing, create symlink from bchscheme to scheme.
Chris Hanson [Sun, 22 Apr 2007 16:40:08 +0000 (16:40 +0000)]
Must conditionalize references to memory_base.
Chris Hanson [Sun, 22 Apr 2007 16:31:24 +0000 (16:31 +0000)]
Final merge from pre-v15 branch.
Taylor R. Campbell [Wed, 18 Apr 2007 20:27:30 +0000 (20:27 +0000)]
Handle definitions that start at the beginning of the buffer in
MARK-DEFUN command.
Chris Hanson [Tue, 17 Apr 2007 06:02:14 +0000 (06:02 +0000)]
Tell unstackify how large the bytes block is.
Chris Hanson [Sun, 15 Apr 2007 19:21:53 +0000 (19:21 +0000)]
Use .so extension only when input file is a .bin file; otherwise use
input file's extension.
Chris Hanson [Sun, 15 Apr 2007 19:21:17 +0000 (19:21 +0000)]
Adapt to another change in built-in object handle naming.
Chris Hanson [Sun, 15 Apr 2007 18:02:15 +0000 (18:02 +0000)]
Forgot to export C-OUTPUT-EXTENSION.
Chris Hanson [Sun, 15 Apr 2007 17:50:37 +0000 (17:50 +0000)]
In FIND-PATHNAME, don't do built-in test for pathnames without types;
that will be handled by LOAD/DEFAULT-FIND-PATHNAME-WITH-TYPE.
Chris Hanson [Sun, 15 Apr 2007 17:43:08 +0000 (17:43 +0000)]
Tweak.
Chris Hanson [Sun, 15 Apr 2007 17:38:38 +0000 (17:38 +0000)]
Ignore .sl and .dylib file extensions; we're now using .so for all
systems.
Chris Hanson [Sun, 15 Apr 2007 17:36:57 +0000 (17:36 +0000)]
Use correct output extension for built-in object handles.
Chris Hanson [Sun, 15 Apr 2007 17:36:30 +0000 (17:36 +0000)]
Force use of .so suffix independent of operating system.
Taylor R. Campbell [Sun, 15 Apr 2007 16:42:09 +0000 (16:42 +0000)]
Change to the right directory before tarring the C files.
Chris Hanson [Sun, 15 Apr 2007 15:50:42 +0000 (15:50 +0000)]
Change handles for liarc files to use output pathname, not input
pathname.
Chris Hanson [Sun, 15 Apr 2007 15:49:20 +0000 (15:49 +0000)]
Suppress "because of" messages.
Chris Hanson [Sun, 15 Apr 2007 15:42:20 +0000 (15:42 +0000)]
Back out last change; shouldn't be necessary with change to compiler.
Chris Hanson [Sun, 15 Apr 2007 15:41:12 +0000 (15:41 +0000)]
Change handles for liarc files to use output pathname, not input
pathname.
Taylor R. Campbell [Sun, 15 Apr 2007 08:16:34 +0000 (08:16 +0000)]
Bump the stack size to two hundred blocks, rather than the default of
one hundred blocks, when compiling Scheme with liarc. One hundred
blocks is insufficient to compile sos/instance.scm with liarc.
Taylor R. Campbell [Sun, 15 Apr 2007 07:49:50 +0000 (07:49 +0000)]
Use liarc built-in objects only for LOAD, not for FASLOAD. When we're
actually loading code for execution, we need them; when we're loading
code for data (e.g., when loading scode for the compiler -- especially
when it is compiling itself, or other parts of the system that are
loaded into the compiler image), we need the file and not the compiled
expression statically linked into the microcode.
This is a kludge, but it is necessary for bootstrapping liarc. I
don't know whether there is any code that relies on FASLOAD yielding
built-in objects, however; I suspect not.
Taylor R. Campbell [Sat, 14 Apr 2007 22:00:09 +0000 (22:00 +0000)]
New declarations (TYPE-CHECKS), (RANGE-CHECKS), (NO-TYPE-CHECKS),
(NO-RANGE-CHECKS) for local scopes. I wrote a much longer
description, but it was eaten by CVS, which left no trace of it, and
I am now disinclined to rewrite it.
Taylor R. Campbell [Sat, 14 Apr 2007 20:33:55 +0000 (20:33 +0000)]
Clean up the C stamp file.
Chris Hanson [Sat, 14 Apr 2007 14:23:12 +0000 (14:23 +0000)]
Suppress "loading" and "dumping" messages for compiler.
Chris Hanson [Sat, 14 Apr 2007 14:02:40 +0000 (14:02 +0000)]
Tweak whitespace.
Chris Hanson [Sat, 14 Apr 2007 05:58:59 +0000 (05:58 +0000)]
Suppress "loading" and "dumping" messages for compiler.
Chris Hanson [Sat, 14 Apr 2007 05:53:17 +0000 (05:53 +0000)]
Suppress "loading" and "dumping" messages for compiler.
Chris Hanson [Sat, 14 Apr 2007 05:39:51 +0000 (05:39 +0000)]
Fix previous tweak to work when HEAP_IN_LOW_MEMORY defined.
Chris Hanson [Sat, 14 Apr 2007 03:55:26 +0000 (03:55 +0000)]
Don't delete compiler-unx.c for c-clean rule.
Chris Hanson [Sat, 14 Apr 2007 03:55:06 +0000 (03:55 +0000)]
Restructure bundling so that each subsystem has its own bundle. Add
necessary shared-library declarations in a few places.
Chris Hanson [Sat, 14 Apr 2007 03:53:32 +0000 (03:53 +0000)]
Fix old typo.
Chris Hanson [Sat, 14 Apr 2007 03:53:04 +0000 (03:53 +0000)]
Redesign interface to built-in object files, so that (1) they include
the pathname type of the file, and (2) the mapping from pathnames to
handles is specified in fewer places.
Chris Hanson [Sat, 14 Apr 2007 03:45:38 +0000 (03:45 +0000)]
Add error check for case where FASL file and microcode have different
settings for HEAP_IN_LOW_MEMORY.
Chris Hanson [Wed, 11 Apr 2007 19:33:28 +0000 (19:33 +0000)]
Fix typo.
Chris Hanson [Wed, 11 Apr 2007 19:32:05 +0000 (19:32 +0000)]
Use standard formatting for usual-integrations warning.
Chris Hanson [Mon, 9 Apr 2007 16:44:06 +0000 (16:44 +0000)]
Initial compiler should have cref support.
Chris Hanson [Mon, 9 Apr 2007 16:43:24 +0000 (16:43 +0000)]
Generate "cref.so" for boot bundles.
Chris Hanson [Mon, 9 Apr 2007 16:43:05 +0000 (16:43 +0000)]
Clean up "microcode/compinit.c".
Chris Hanson [Mon, 9 Apr 2007 16:42:20 +0000 (16:42 +0000)]
Fix thinkos: "make" files are sometimes compiled.
Chris Hanson [Mon, 9 Apr 2007 16:41:56 +0000 (16:41 +0000)]
Reorder LOAD types for consistency with FASLOAD.
Chris Hanson [Sat, 7 Apr 2007 19:53:49 +0000 (19:53 +0000)]
Fix typo in previous change.
Chris Hanson [Sat, 7 Apr 2007 12:43:29 +0000 (12:43 +0000)]
Add missing #include "osfs.h".
Chris Hanson [Sat, 7 Apr 2007 04:05:07 +0000 (04:05 +0000)]
Back out previous change; it's the right behavior but too disruptive
right now.
Chris Hanson [Sat, 7 Apr 2007 04:03:56 +0000 (04:03 +0000)]
Changes to support microcode's pre-v15 branch.
Chris Hanson [Sat, 7 Apr 2007 04:03:37 +0000 (04:03 +0000)]
Fix syntax error (quoting problem). Rewrite hereis documents to be
single Scheme expressions so that an error prevents any subsequent
expressions from being evaluated.
Chris Hanson [Sat, 7 Apr 2007 04:02:22 +0000 (04:02 +0000)]
Delete "compiler-unx.*".
Chris Hanson [Sat, 7 Apr 2007 04:02:04 +0000 (04:02 +0000)]
All clean rules must delete "boot-compiler.com".
Taylor R. Campbell [Thu, 5 Apr 2007 22:42:35 +0000 (22:42 +0000)]
Use BUFFER-REMOVE!, rather than (BUFFER-PUT! ... #F).
Taylor R. Campbell [Thu, 5 Apr 2007 22:36:14 +0000 (22:36 +0000)]
Tweak EDWIN-SET-STRING-MAXIMUM-LENGTH!, too.
Taylor R. Campbell [Thu, 5 Apr 2007 22:24:42 +0000 (22:24 +0000)]
Tweak EDWIN-STRING-ALLOCATE so that it doesn't rely on range-checking
being disabled when NUL-terminating the string.
Chris Hanson [Thu, 5 Apr 2007 19:52:08 +0000 (19:52 +0000)]
Don't show compilation of individual procedures.
Chris Hanson [Thu, 5 Apr 2007 17:49:54 +0000 (17:49 +0000)]
Eliminate runtime-check directory and 6.001 band.
Chris Hanson [Thu, 5 Apr 2007 17:49:19 +0000 (17:49 +0000)]
When loading a file, change the working directory to that of the file,
so that relative pathnames work right.
Chris Hanson [Thu, 5 Apr 2007 17:43:24 +0000 (17:43 +0000)]
Don't build 6.001 band.
Chris Hanson [Thu, 5 Apr 2007 17:42:19 +0000 (17:42 +0000)]
Eliminate separate runtime-check.
Chris Hanson [Thu, 5 Apr 2007 17:36:19 +0000 (17:36 +0000)]
Tweak defaults to enable type and range checking by default.
Taylor R. Campbell [Thu, 5 Apr 2007 03:23:22 +0000 (03:23 +0000)]
Fix three problems in completion of IMAP mailbox names and listing of
the contents of IMAP containers:
1. Some IMAP servers refuse a pattern of `/%' for the LIST command, or
yield an empty list of results, so send `%' if we're examining the
root mailbox.
2. Some IMAP servers return the container itself that we're trying to
list the contents of, so filter that out if we see it.
3. Some IMAP servers hand out folder URLs and container URLs, so
canonicalize them appropriately in order that RUN-LIST-COMMAND may
return only folder URLs.
Taylor R. Campbell [Thu, 5 Apr 2007 02:35:14 +0000 (02:35 +0000)]
Associate names with generic procedures generated by DEFINE {ACCESSOR,
MODIFIER, INITPRED} clauses for slots in DEFINE-CLASS.
Taylor R. Campbell [Thu, 5 Apr 2007 01:56:09 +0000 (01:56 +0000)]
Remember when MIME entities are collapsed or expanded, in a hash table
per IMAIL folder buffer. (This information will still be forgotten
when the buffer is killed and the folder reopened, but that probably
doesn't matter.)
Taylor R. Campbell [Thu, 5 Apr 2007 00:25:30 +0000 (00:25 +0000)]
Use `pwd`, rather than $(pwd), which standard sh does not support.
Taylor R. Campbell [Wed, 4 Apr 2007 18:35:16 +0000 (18:35 +0000)]
Use WITH-NOTIFICATION to notify of initialization and finalization of
packages, rather than formatting the message to the notification
output port directly.
Taylor R. Campbell [Wed, 4 Apr 2007 06:43:48 +0000 (06:43 +0000)]
Fix formerly untested make-c-files script for making distribution tarballs.
Taylor R. Campbell [Wed, 4 Apr 2007 05:33:47 +0000 (05:33 +0000)]
Use --preserve-timestamps only if available.
Taylor R. Campbell [Wed, 4 Apr 2007 05:08:19 +0000 (05:08 +0000)]
Very belatedly, many changes to smooth many rough edges with the C back
end. It should now be possible to bootstrap and install the system
using the C back end much more cleanly, by the following steps:
# Prepare the tree for compiling from C.
./Setup.sh
./configure --enable-native-code=c
make c
# Optionally, clean everything except the bare minimum of the C code
# to generate a distribution tree. Doing so requires reconfiguring.
make c-clean
# ...distribute the tree..
./configure --enable-native-code=c
# Make the system from C, without needing an existing Scheme
# installation for bootstrapping.
make
# Install.
make install
Chris Hanson [Tue, 3 Apr 2007 04:11:33 +0000 (04:11 +0000)]
Add a few missing primitives to FILE-PRIMITIVE-DESCRIPTION.
Chris Hanson [Tue, 3 Apr 2007 03:58:58 +0000 (03:58 +0000)]
Don't return error message for syserr_unknown.
Taylor R. Campbell [Sun, 1 Apr 2007 17:51:33 +0000 (17:51 +0000)]
Commit forgotten changes to runtime/string.scm in the last checkin (to
make Edwin buffers use external strings).
Taylor R. Campbell [Sun, 1 Apr 2007 17:33:07 +0000 (17:33 +0000)]
Use external strings to store the contents of Edwin buffers. Edwin can
now edit files and buffers up to 32 MB without occupying more than a
small and (roughly) constant amount of space in the Scheme heap.
New procedures in the system global environment:
EXTERNAL-STRING-DESCRIPTOR (Edwin needs this to initialize the group
structure so that the microcode can get at it.)
XSTRING-FILL!
XSTRING-REF
XSTRING-SET!
XSUBSTRING (This was in imail/imail-util.scm.)
XSUBSTRING-FILL!
XSUBSTRING-FIND-NEXT-CHAR
XSUBSTRING-FIND-NEXT-CHAR-CI
XSUBSTRING-FIND-NEXT-CHAR-IN-SET
XSUBSTRING-FIND-PREVIOUS-CHAR
XSUBSTRING-FIND-PREVIOUS-CHAR-CI
XSUBSTRING-FIND-PREVIOUS-CHAR-IN-SET
(There is probably a better way to deal with most of the above
procedures -- I expect that wouldn't hurt just to fold them into the
string operations by similar names, since we already check argument
types in those operations. This kludginess works for now, though.)
Taylor R. Campbell [Fri, 30 Mar 2007 08:17:18 +0000 (08:17 +0000)]
Use XSUBSTRING-MOVE! in WRITE-SUBSTRING:EXTERNAL-SUBSTRING, not
SUBSTRING-MOVE! -- the latter does not accept external strings.
Taylor R. Campbell [Wed, 28 Mar 2007 02:29:24 +0000 (02:29 +0000)]
Use true or false pcfgs, as appropriate, instead of null cfgs, when
generating disabled open-coded checks. Although OPEN-CODE:WITH-CHECKS
filters out true pcfgs and null cfgs, these cfgs may be used directly
in pcfg predicates, as in OPEN-CODE:INDEX-CHECK, which permits only
pcfgs, not null cfgs.
Taylor R. Campbell [Mon, 26 Mar 2007 23:54:26 +0000 (23:54 +0000)]
When evaluating a region, if the region is from the REPL buffer, set
the buffer's point to the line start after the region, not the end of
the region.
Taylor R. Campbell [Mon, 26 Mar 2007 23:33:48 +0000 (23:33 +0000)]
When switching between Inferior REPL and Inferior CMDL modes, adjust
the comtabs more carefully, so that only the major modes' comtabs are
affected, leaving any minor modes' untouched.
This allows minor modes that bind keys to be used in the REPL even
after errors occur; before, the keys they bound would be forgotten
after errors. Paredit Mode can be now used in the REPL as a result.
Chris Hanson [Wed, 21 Mar 2007 15:08:55 +0000 (15:08 +0000)]
Rename REDUCE to REDUCE-LEFT.
Chris Hanson [Wed, 21 Mar 2007 15:06:16 +0000 (15:06 +0000)]
Implement REDUCE-LEFT, which has semantics of old REDUCE.
Taylor R. Campbell [Sun, 11 Mar 2007 22:38:55 +0000 (22:38 +0000)]
Unmap the message indices returned by SEARCH-FOLDER. Define
%SEARCH-FOLDER as a generic procedure which the non-generic procedure
SEARCH-FOLDER calls.
Taylor R. Campbell [Sun, 11 Mar 2007 22:30:05 +0000 (22:30 +0000)]
Bump the default size limit for in-line display of MIME text parts to
65536, since we by default cache message bodies of that size anyway.
Taylor R. Campbell [Sun, 11 Mar 2007 22:26:45 +0000 (22:26 +0000)]
New Edwin variable IMAIL-INLINE-MIME-TEXT-LIMIT, to prevent gargantuan
text parts that satisfy all the other rules for in-line display from
screwing Edwin.
This affects the main body of the message, too, however. We could
work around this easily for unipart messges, although anything else
would require a little more effort. In any case, although it is a
minor annoyance to have to type `C-c C-t C-e' to show the body of a
very long message, it is a much more major annoyance for Edwin to lose
spectacularly for a message too large to fit in its heap.
Taylor R. Campbell [Sun, 11 Mar 2007 17:33:37 +0000 (17:33 +0000)]
Don't record the folder's cached modification count in folder orders;
simply check that it has not changed since we built the tree.
New procedure MESSAGE-ORDER-KEY computes a message's key into the
folder order tree, if the message's folder is ordered. This must be
computed before a message is actually expunged, because the key may
require information that is destroyed when expunging the message.
EXPUNGE modification events on folders now accept an extra parameter,
the key of the message being expunged.
Taylor R. Campbell [Sun, 11 Mar 2007 15:49:44 +0000 (15:49 +0000)]
Remove Edwin indentation settings for no longer used forms.
Taylor R. Campbell [Sun, 11 Mar 2007 15:48:28 +0000 (15:48 +0000)]
Fix thinko in previous commit: if the folder's modification count has
changed, unconditionally build the order's tree, instead of building a
tree only if there is none already there.
Taylor R. Campbell [Sun, 11 Mar 2007 15:35:18 +0000 (15:35 +0000)]
Preload folder outlines before memoizing folder order. This improves
the performance of sorting IMAIL folders dramatically.
Taylor R. Campbell [Sun, 11 Mar 2007 15:04:31 +0000 (15:04 +0000)]
Use a modification count cache to verify and commit memoized folder
orders, instead of blocking interrupts, so that MEMOIZE-FOLDER-ORDER
may now be interrupted.
Memoize the folder order immediately before it is assigned to a folder
in SET-FOLDER-ORDER!. This means that it can no longer be delayed
until actually needed, but also that if it is interrupted it won't
actually set the folder's order and thereby wedge IMAIL until the
messages are sorted.
Allow message indices to fall outside the range of folder orders, and
leave them as they are, in case the folder order has not been updated
yet to reflect them.
Taylor R. Campbell [Sun, 11 Mar 2007 04:32:07 +0000 (04:32 +0000)]
Fix another bug, with receiving and ignoring modification events for ordering.
Taylor R. Campbell [Sun, 11 Mar 2007 03:59:12 +0000 (03:59 +0000)]
Fix bug in previous commit with modification event arguments.
Taylor R. Campbell [Sun, 11 Mar 2007 01:11:41 +0000 (01:11 +0000)]
New implementation of folder orders that uses AVL trees instead of
sorted vectors to store the order of messages. Modifications to the
folder are now reflected in incremental updates to the folder order by
AVL insertions, instead of rebuilding the order vector for every
modification to the folder. Also, the key by which the message is
sorted is now computed once per message in the order record, instead
of every time that the message comparison predicate is called.
Taylor R. Campbell [Sat, 10 Mar 2007 17:35:57 +0000 (17:35 +0000)]
Use %MESSAGE-INDEX instead of MESSAGE-INDEX in FETCH-MESSAGE-ITEMS.
This will give the correct index in the mailbox's sequence to the IMAP
server, and if the folder is sorted it will also not cause an infinite
loop, because in that case MESSAGE-INDEX may require fetching the
message to determine how to sort it, which may require calling
MESSAGE-INDEX.
Taylor R. Campbell [Tue, 6 Mar 2007 04:43:46 +0000 (04:43 +0000)]
Include middle initial in `Taylor R. Campbell', to disambiguate from
the large-breasted porn star that will turn up by Googling `Taylor
Campbell'...
Taylor R. Campbell [Tue, 6 Mar 2007 00:30:06 +0000 (00:30 +0000)]
Implement rudimentary font name completion and apropos.
This does not handle gracefully the deluge of available fonts (over
five thousand on my machine) by presenting common groups in palatable
ways, and it does not attempt to cache the huge string tables, but it
works.
Chris Hanson [Sat, 24 Feb 2007 17:09:46 +0000 (17:09 +0000)]
Backport changes from pre-v15 branch.
Taylor R. Campbell [Fri, 23 Feb 2007 23:45:28 +0000 (23:45 +0000)]
Incorporate changes from Jesper Louis Andersen to make the microcode
build on FreeBSD again.
Taylor R. Campbell [Fri, 23 Feb 2007 11:38:32 +0000 (11:38 +0000)]
In the double-quote command, actually insert an escaped double-quote
if inside a string, not an escaped space.