21 Commits

Author SHA1 Message Date
dcs
87575284dc Make abort" functional in interpret mode. This behavior is undefined
by ANS Forth standard, but it's useful.

Also, define the constant true in a more strict way. C might garantee
2-complement math, but Forth doesn't.
2000-06-12 16:42:02 +00:00
dcs
e8eb747a92 Remove a bug that caused local variables declarations in the format
{ | internal -- } to be rejected.
2000-06-07 22:00:10 +00:00
dcs
a92f3a6a0a Add something that was missing from the original 2.04 distribution. 2000-06-02 13:49:09 +00:00
dcs
22ac78c306 Add "int" sized manipulation words. 2000-06-01 18:10:44 +00:00
dcs
50900cd7f6 Strip spaces and comments more agressively. 2000-05-26 22:58:10 +00:00
dcs
7a420274fb Bring in FICL 2.04. No bump of loader version is required by this
commit.
2000-05-26 21:35:08 +00:00
dcs
22631e4b23 ANS Forth for logical not is 0=, not invert. Replace wrong usage. 2000-01-28 03:41:39 +00:00
dcs
104201a6c3 Fix world-breaking bug, add $FreeBSD$ tag.
This happened to be my first "for real" broken world. I had broken
it once before, but nobody noticed, so it didn't count.

So, how do I get the "I broke world and all I got was the lousy t-shirt"
t-shirt?
1999-09-29 10:58:43 +00:00
dcs
6a5ea9437a Bring in ficl version 2.03. No version bump for loader. 1999-09-29 04:43:16 +00:00
peter
3b842d34e8 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
dcs
3386e28dad Remove redundant code. 1999-03-15 08:08:20 +00:00
dcs
827ffa0722 Make $ print different lines in, well, different lines. 1999-02-28 02:10:14 +00:00
dcs
72ab07e9db Make FICL_TRACE default.
Add freebsd.fr, for FreeBSD specific forth source. Add $ and %, to
replace the lost @ and - functionality of include. $ has the opposite
behavior of @ though, since the default behavior was inverted.
1999-02-04 17:13:49 +00:00
dcs
0ebff7e4fd Add conditional compilation facilities to ficl. This had been previously
committed to RELENG_3 instead of HEAD, so let's HEAD catch up.

PR:		bin/9662
1999-02-04 12:57:56 +00:00
msmith
355b55c282 Add EXCEPTION word set.
Make TIB handling use buffer size to conform with ANS Forth.

Add ANS MEMORY-ALLOC word set.

See the PRs for extensive details.

PR:		kern/9412 kern/9442 kern/9514
Submitted by:	PRs from Daniel Sobral <dcs@newsguy.com>
1999-01-22 23:52:59 +00:00
msmith
488523664e Transition from using Perl to using awk for our text-manipulation
needs.  This removes the dependancy on Perl for the generation of the
loader, allowing the world to be built on a perl-free system.

Submitted by:	Joe Abley <jabley@clear.co.nz>
1999-01-18 19:05:27 +00:00
jkh
4a9e91d8fe Take init out of here - it's a layering violation. 1998-11-07 05:01:25 +00:00
jkh
d539a87b02 Make fexists/fload work with existing string literals instead. Doing
my own string literal handling is just too wonky.
1998-11-06 23:20:32 +00:00
jkh
33ecda9af6 Remember a bit more of my forth and do:
o Add fexists word to check for the presence of a file
o make fexists and fload immediate words which DTRT both interpreted
  and compiled (doh!)
o add an init word which gets run at bootstrapping time to do extra
  post-coldload initialization (in the default implementation, we
  look for /boot/boot.4th and load it if found).
1998-11-05 08:39:43 +00:00
msmith
38c50ef266 Improve the assertion testing for successful softword compilation.
The excessive use of assert() vs. robust error checking is annoying.
1998-11-04 07:07:18 +00:00
msmith
fe1c6b5af2 Add the Ficl (Forth Inspired Command Language) interpreter. If all goes well,
this will allow us to manage bloat in the loader by using a bytecoded HLL
rather than lots of C code.  It also offers an opportunity for vendors
or others with special applications to significantly customise the boot
process without having to commit to a divergent code branch.

This early commit is to allow others to experiment with the most effective
mechanisms for integrating FICL with the loader as it currently stands.

Ficl is distributed with the following license conditions:

"Ficl is freeware.  Use it in any way that you like, with the understanding
 that the code is not supported."

All source files contain authorship attributions.

Obtained from:	John Sadler (john_sadler@alum.mit.edu)
1998-11-03 06:11:35 +00:00