Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #134736

kForth-32 v 2.7.0

From Krishna Myneni <krishna.myneni@ccreweb.org>
Newsgroups comp.lang.forth
Subject kForth-32 v 2.7.0
Date 2026-03-19 12:34 -0500
Organization A noiseless patient Spider
Message-ID <10phc30$tj97$1@dont-email.me> (permalink)

Show all headers | View raw


A new version of kForth-32 (v 2.7.0) is now available for 32-bit/64-bit 
Linux users, at the link below. Note that this is an integrated data/fp 
stack version of Forth which provides many of the features of both 
Forth-94 and Forth-2012.


====== Start of commit 6818538 message ======
kForth-32 v 2.7.0: revised interpreter/compiler
This update of kForth-32 (v 2.7.0) mirrors recent substantial
changes to kForth-64, in particular to the interpreter/compiler
which has been rewritten to align with the recognizers proposal
for the Forth 202x standard. See

https://forth-standard.org/proposals/recognizer-committee-proposal-2025-09-11

Changes include:
   -- following new words:
      NAME>EXECUTE (non-standard; for support of recognizers)
      COMPILE-NAME-BC (non-standard; for support of recognizers)
      REC-NAME         proposed standard
      REC-NUMBER         "          "
      REC-FLOAT          "          "
      REC-NONE           "          "
      TRANSLATE-NAME     "          "
      TRANSLATE-CELL     "          "
      TRANSLATE-DCELL    "          "
      TRANSLATE-FLOAT    "          "
      TRANSLATE-NONE     "          "
      INTERPRET          "          "

  -- interpreter recognizes standard base prefixes for numbers:
     $ prefix for hex number
     # prefix for decimal number
     % prefix for binary number

-- interpreter recognizes double length integers when entered
    with a base prefix and a trailing decimal point.

-- coreplus.4th system test renamed to coreplustest.4th to
    follow upstream naming.

-- +LOOP fixed to pass all coreplustest.4th DO ... +LOOP tests.

-- error reporting added for POSTPONE.

-- system tests in forth-src/system-test have been revised
    to report Error Count and number of skipped tests (this
    is incomplete and an ongoing effort).

  On branch master
	modified:   forth-src/system-test/core.4th
	modified:   forth-src/system-test/coreexttest.4th
	deleted:    forth-src/system-test/coreplus.4th
	new file:   forth-src/system-test/coreplustest.4th
	modified:   forth-src/system-test/dbltest.4th
	modified:   forth-src/system-test/facilitytest.4th
	modified:   forth-src/system-test/fatan2-test.4th
	modified:   forth-src/system-test/filetest.4th
	modified:   forth-src/system-test/fpio-test.4th
	modified:   forth-src/system-test/regress.4th
	modified:   src/ForthCompiler.cpp
	modified:   src/ForthCompiler.h
	modified:   src/ForthVM.cpp
	modified:   src/ForthVM.h
	modified:   src/ForthWords.h
	modified:   src/Makefile
	modified:   src/fbc.h
	modified:   src/kfmacros.h
	modified:   src/kforth.cpp
	modified:   src/vm32-common.s
	modified:   src/vm32-fast.s
	modified:   src/vm32.s
	modified:   src/vmc.c
====== End of commit 6818538 message ======

A transcript of the system tests is given below.

====== Start of system tests transcript ======
\ 19 March 2026
\ System test of kForth-32 master branch at commit 6818538
\ Tester: K. Myneni
\ Transcript follows
\
$ kforth32
kForth-32 v 2.7.0	 (Build: 2026-03-19)
Copyright (c) 1998--2026 Krishna Myneni
Contributions by: dpw gd mu bk abs tn cmb bg dnw
Provided under the GNU Affero General Public License, v3.0 or later


Ready!
\ ====  core.4th  ===
include core

/home/krishna/kforth/tester.4th

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING CORE WORDS
TESTING BASIC ASSUMPTIONS
TESTING BOOLEANS: INVERT AND OR XOR
TESTING 2* 2/ LSHIFT RSHIFT
TESTING COMPARISONS: 0= = 0< < > U< MIN MAX
TESTING STACK OPS: 2DROP 2DUP 2OVER 2SWAP ?DUP DEPTH DROP DUP OVER ROT SWAP
TESTING >R R> R@
TESTING ADD/SUBTRACT: + - 1+ 1- ABS NEGATE
TESTING MULTIPLY: S>D * M* UM*
TESTING DIVIDE: FM/MOD SM/REM UM/MOD */ */MOD / /MOD MOD
TESTING @ ! CELL+ CELLS C@ C! CHARS 2@ 2! +!
Skipping tests: HERE ,
Skipping tests: ALIGN
TESTING CHAR [CHAR] [ ] BL S"
TESTING ' ['] FIND EXECUTE IMMEDIATE COUNT LITERAL POSTPONE STATE
TESTING IF ELSE THEN BEGIN WHILE REPEAT UNTIL RECURSE
TESTING DO LOOP +LOOP I J UNLOOP LEAVE EXIT
TESTING DEFINING WORDS: : ; CONSTANT VARIABLE CREATE DOES> >BODY
TESTING EVALUATE
TESTING WORD
Skipping tests: SOURCE >IN
TESTING <# # #S #> HOLD SIGN BASE >NUMBER HEX DECIMAL
TESTING FILL MOVE
TESTING OUTPUT: . ." CR EMIT SPACE SPACES TYPE U.
YOU SHOULD SEE THE STANDARD GRAPHIC CHARACTERS:
  !"#$%&'()*+,-./0123456789:;<=>?@
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
abcdefghijklmnopqrstuvwxyz{|}~
YOU SHOULD SEE 0-9 SEPARATED BY A SPACE:
0 1 2 3 4 5 6 7 8 9
YOU SHOULD SEE 0-9 (WITH NO SPACES):
0123456789
YOU SHOULD SEE A-G SEPARATED BY A SPACE:
A B C D E F G
YOU SHOULD SEE 0-5 SEPARATED BY TWO SPACES:
0  1  2  3  4  5
YOU SHOULD SEE TWO SEPARATE LINES:
LINE 1
LINE 2
YOU SHOULD SEE THE NUMBER RANGES OF SIGNED AND UNSIGNED NUMBERS:
   SIGNED: -80000000 7FFFFFFF
UNSIGNED: 0 FFFFFFFF
TESTING INPUT: ACCEPT

PLEASE TYPE UP TO 80 CHARACTERS:
hello world
RECEIVED: "hello world"
TESTING DICTIONARY SEARCH RULES
GDX is redefined
  ok
cold
  ok
\ === asm-x86-test.4th ===
include asm-x86-test

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th

/home/krishna/kforth/asm-x86-examples.4th

/home/krishna/kforth/modules.4th

/home/krishna/kforth/syscalls.4th

/home/krishna/kforth/mc.4th

/home/krishna/kforth/asm-x86.4th

/home/krishna/kforth/dump.4th
TESTING Use of ADD, MOV, IMUL,
TESTING Use of CXNZ, IF, THEN, DO, LOOP, INC,
TESTING Use of BEGIN, WHILE, REPEAT, CMP, <, XOR,
TESTING Use of LABEL: JMP, >,
  ok
cold
  ok
\ === coreexttest.4th ===
include coreexttest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING Core Extension words
TESTING TRUE FALSE
TESTING <> U>   (contributed by James Bowman)
TESTING 0<> 0>   (contributed by James Bowman)
TESTING NIP TUCK ROLL PICK   (contributed by James Bowman)
TESTING 2>R 2R@ 2R>   (contributed by James Bowman)
TESTING HEX   (contributed by James Bowman)
TESTING WITHIN   (contributed by James Bowman)
Skipping tests of UNUSED
TESTING AGAIN   (contributed by James Bowman)
Skipping tests of MARKER
TESTING ?DO
Skipping tests of BUFFER:
TESTING VALUE TO
Skipping IMMEDIATE tests for VALUEs
TESTING CASE OF ENDOF ENDCASE
TESTING :NONAME RECURSE
TESTING C"
TESTING COMPILE,
Skipping tests of SAVE-INPUT and RESTORE-INPUT
TESTING .(


Output from .(
You should see -9876: -9876
and again: -9876


On the next 2 lines you should see First then Second messages:
First message via .(
Second message via ."

TESTING .R and U.R - has to handle different cell sizes


Output from .R and U.R
You should see lines duplicated:
indented by 0 spaces
1984383623
1984383623
-2088648479
-2088648479
1984383623
1984383623
2206318817
2206318817

indented by 0 spaces
1984383623
1984383623
-2088648479
-2088648479
1984383623
1984383623
2206318817
2206318817

indented by 5 spaces
      1984383623
      1984383623
      -2088648479
      -2088648479
      1984383623
      1984383623
      2206318817
      2206318817

TESTING PAD ERASE
TESTING PARSE
TESTING PARSE-NAME  (Forth 2012)
TESTING DEFER DEFER@ DEFER! IS ACTION-OF (Forth 2012)
Skipping test of HOLDS
Skipping tests of REFILL and SOURCE-ID
Skipping tests of S\"

Error Count: 0
Tests Skipped [see comments above]: 58
End of Core Extension word tests
  ok
cold
  ok
\ ===  coreplutest.4th  ===
include coreplustest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING DO +LOOP with run-time increment, negative increment, infinite loop
TESTING DO +LOOP with large and small increments
TESTING DO +LOOP with maximum and minimum increments
TESTING +LOOP setting I to an arbitrary value
TESTING multiple RECURSEs in one colon definition
TESTING multiple ELSE's in an IF statement
Skipping tests: manipulation of >IN in interpreter mode
TESTING IMMEDIATE / NONDEFERRED with CONSTANT  VARIABLE and CREATE [ ... 
DOES> ]
TESTING that IMMEDIATE doesn't toggle a flag
TESTING parsing behaviour of S" ." and (

You should see 2345: 2345
TESTING number prefixes # $ %
Skipping tests: 'c' character input
TESTING definition names
TESTING FIND with a zero length string and a non-existent word

Error Count: 0

Tests Skipped [see comments above]: 6
End of additional Core tests
  ok
cold
  ok
\ ===  dbltest.4th  ===
include dbltest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING M+ D+ D- DNEGATE
TESTING D2* D2/
TESTING D= D<
Skipping tests: D<> D> D>= D<=
TESTING D0= D0< DU<

Error Count: 0
Tests Skipped [see comments above]: 19
End of Double Number word tests
  ok
cold
  ok
\ ===  divtest.4th ===
include divtest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING UTS/MOD
TESTING num.hi = num.mi = 0
TESTING num.mi.sd >= denom.sd
TESTING   num.mi > denom, denom.sd = 32
TESTING   num.mi = denom, denom.sd = 32
TESTING   num.mi < denom, denom.sd = 32
TESTING num.mi.sd < denom.sd
TESTING   num.mi < denom, denom.sd = 32
TESTING num.hi.sd >= denom.sd
TESTING num.hi.sd < denom.sd
TESTING STS/REM
INCORRECT RESULT: t{  2  0  minint ds* 2 sts/rem ->  0 minint -1 -1 }t
INCORRECT RESULT: t{  2  0  minint ds* minint sts/rem ->  0  2  0  0 }t
INCORRECT RESULT: t{  0 minint maxint ds* minint sts/rem ->  0  0 maxint 
  0 }t
INCORRECT RESULT: t{  0 minint maxint ds* maxint sts/rem ->  0  0 minint 
-1 }t
TESTING UTM/
TESTING num.hi = num.mi = 0
TESTING num.mi.sd >= denom.sd
TESTING   num.mi > denom, denom.sd = 32
TESTING   num.mi = denom, denom.sd = 32
TESTING   num.mi < denom, denom.sd = 32
TESTING num.mi.sd < denom.sd
TESTING   num.mi < denom, denom.sd = 32
TESTING num.hi.sd >= denom.sd
TESTING num.hi.sd < denom.sd
Use core.4th for UM/MOD FM/MOD nonexception tests.
TESTING SM/REM
Uncomment lines in divtest.4th to test error reports.
  ok
cold
  ok
\ ===  facilitytest.4th  ===
include facilitytest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/struct-200x.4th

/home/krishna/kforth/ttester.4th
TESTING Facility words
TESTING BEGIN-STRUCTURE END-STRUCTURE +FIELD
TESTING FIELD: CFIELD:
TESTING Nested structures

Error Count: 0

End of Facility word tests
  ok
cold
  ok
\ ===  fatan2-test.4th  ===
include fatan2-test

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th

floating-point and data stacks *not separate*
TESTING normal values
TESTING Single UNIX 3 special values spec
TESTING Single UNIX 3 special values optional spec

Error Count: 0
  ok
cold
  ok
\ ===  filetest.4th  ===
include filetest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th

/home/krishna/kforth/strings.4th

/home/krishna/kforth/files.4th
TESTING File Access word set
TESTING CREATE-FILE CLOSE-FILE
TESTING OPEN-FILE W/O WRITE-LINE
TESTING R/O FILE-POSITION (simple)  READ-LINE
TESTING S" in interpretation mode (compile mode tested in Core tests)
TESTING R/W WRITE-FILE REPOSITION-FILE READ-FILE FILE-POSITION S"
TESTING BIN READ-FILE FILE-SIZE
Skipping tests: RESIZE-FILE
TESTING DELETE-FILE
rm: cannot remove 'fatest2.txt': No such file or directory
TESTING multi-line ( comments
Skipping tests: SOURCE-ID
TESTING RENAME-FILE FLUSH-FILE
rm: cannot remove 'fatest3.txt': No such file or directory
Skipping tests: FILE-STATUS

Error Count: 0

Tests Skipped [see comments above]: 16
End of File-Access word tests
  ok
cold
  ok
\ ===  fpio-test.4th  ===
include fpio-test

FPIO-TEST         V1.2      12 Mar     2026
/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th

TESTING Conversion of Exactly Representable Numbers

TESTING Rounding of Numbers

Error Count: 0

End of Core Extension word tests
  ok
cold
  ok
\ ===  fpzero-test.4th  ===
include fpzero-test

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th


System supports fp signed zero.
#ERRORS: 0
  ok
cold
  ok
\ ===  ieee-arith-test.4th  ===
include ieee-arith-test

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th

TESTING F+
TESTING F-
TESTING F*
TESTING F/
TESTING FSQRT
NOT TESTING F*+
#ERRORS: 0
  ok
cold
  ok
\ ===  ieee-fprox-test.4th  ===
include ieee-fprox-test

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th

TESTING equality of floating-point encoding
TESTING absolute tolerance
TESTING relative tolerance
#ERRORS: 0
  ok
cold
  ok
\ ===  memorytest.4th  ===
include memorytest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING Memory-Allocation word set
TESTING ALLOCATE FREE RESIZE
Skipping tests involving HERE
TESTING failure of RESIZE and ALLOCATE (unlikely to be enough memory)
TESTING @  and ! work in ALLOCATEd memory (provided by Peter Knaggs)

End of Memory-Allocation word tests
  ok
cold
  ok
\ ===  regress.4th  ===
include regress

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING 0<> 0> <> U>
TESTING WITHIN
TESTING UW@ SW@ W! UL@ SL@ L!
TESTING <= >= -ROT 2ROT
TESTING 2+ 2-
Need tests for DNEGATE D< besides Gforth
TESTING CMOVE  CMOVE>  FILL  ERASE
TESTING SP@  RP@  SP!  RP!  2R@  2>R  2R>
TESTING NIP TUCK PICK ROLL
TESTING UDM* DABS M/ M*/ DS*
TESTING DMAX DMIN
TESTING NUMBER?
TESTING SYNONYM
Uncomment lines in regress.4th to test errors.
TESTING F= F<> F< F> F<= F>= F0= F0< F0>
TESTING S>F D>F F>D FROUND>S FTRUNC>S SF@ SF! DF@ DF!
Skipping overflow F>D tests.
TESTING DEG>RAD RAD>DEG
TESTING DFLOATS DFLOAT+ F+ F- F* F/ FABS FNEGATE
TESTING FROUND FLOOR FTRUNC
TESTING FSQRT FCOS FSIN FATAN2 FSINCOS
TESTING Additional POSTPONE tests
TESTING COMPILE,
TESTING MS USLEEP
Assumes MS@ works -- test MS@ manually.
TESTING Deferred Execution
  ok
cold
  ok
\ ===  searchordertest.4th  ===
include searchordertest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING Search-order word set
TESTING FORTH-WORDLIST GET-ORDER SET-ORDER
TESTING ALSO ONLY FORTH
TESTING GET-CURRENT SET-CURRENT WORDLIST (simple)
TESTING minimum search order list contains FORTH-WORDLIST and SET-ORDER
TESTING GET-ORDER SET-ORDER with 0 and -1 number of wids argument
TESTING DEFINITIONS PREVIOUS
TESTING SEARCH-WORDLIST WORDLIST FIND
TESTING new definitions are put into the correct wordlist
TESTING ORDER  \ Should display search order and compilation wordlist

ONLY FORTH DEFINITIONS search order and compilation list
[Forth]  Root
Plus another unnamed wordlist at the head of the search order
[Unnamed]  Forth  Root
End of Search Order word tests
  ok
cold
  ok
\ ===  stringtest.4th  ===
include stringtest

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING String word set
TESTING -TRAILING
TESTING /STRING
TESTING SEARCH
TESTING COMPARE
TESTING CMOVE and CMOVE>
TESTING BLANK
TESTING SLITERAL

End of String word tests
  ok
cold
  ok
\ ===  to-float-test.4th  ===
include to-float-test

/home/krishna/kforth/ans-words.4th

/home/krishna/kforth/ttester.4th
TESTING >FLOAT

#ERRORS: 0
  ok
cold
  ok
\ ===  paranoia.4th  ===
include paranoia

/home/krishna/kforth/ans-words.4th
SIGN is redefined


Type "main" to start the tests.
  ok
main

Lest this program stop prematurely, i.e. before displaying

    `END OF TEST',

try to persuade the computer NOT to terminate execution when an
error like Over/Underflow or Division by Zero occurs, but rather
to persevere with a surrogate value after, perhaps, displaying some
warning.  If persuasion avails naught, don't despair but run this
program anyway to see how many milestones it passes, and then
amend it to make further progress.

Answer questions with Y, y, N or n (unless otherwise indicated).

To continue, press RETURN
Diagnosis resumes after milestone Number 0
          Page: 1

Users are invited to help debug and augment this program so it will
cope with unanticipated and newly uncovered arithmetic pathologies.
Please send suggestions and interesting results to

Richard Karpinski
Computer Center U-76
University of California
San Francisco, CA 94143-0704, USA

In doing so, please include the following information:

Precision: double
Version: 10 February 1989; Forth
Computer:
Compiler:
Optimization level:
Other relevant compiler options:

To continue, press RETURN
Diagnosis resumes after milestone Number 1
          Page: 2

Running this program should reveal these characteristics:

     Radix = 1, 2, 4, 8, 10, 16, 100, 256 ...
     Precision = number of significant digits carried.
     U2 = Radix/Radix^Precision = One Ulp
(OneUlpnit in the Last Place) of 1.000xxx .
     U1 = 1/Radix^Precision = One Ulp of numbers a little less than 1.0 .
     Adequacy of guard digits for Mult., Div. and Subt.
     Whether arithmetic is chopped, correctly rounded, or something else
for Mult., Div., Add/Subt. and Sqrt.
     Whether a Sticky Bit used correctly for rounding.
     UnderflowThreshold = an underflow threshold.
     E0 and PseudoZero tell whether underflow is abrupt, gradual, or fuzzy.
     V = an overflow threshold, roughly.
     V0  tells, roughly, whether  Infinity  is represented.
     Comparisions are checked for consistency with subtraction
and for contamination with pseudo-zeros.
     Sqrt is tested.  Y^X is not tested.
     Extra-precise subexpressions are revealed but NOT YET tested.
     Decimal-Binary conversion is NOT YET tested for accuracy.

To continue, press RETURN
Diagnosis resumes after milestone Number 2
          Page: 3

The program attempts to discriminate among

   FLAWs, like lack of a sticky bit,
   Serious DEFECTs, like lack of a guard digit, and
   FAILUREs, like 2+2 == 5 .

Failures may confound subsequent diagnoses.

The diagnostic capabilities of this program go beyond an earlier
program called `MACHAR', which can be found at the end of the
book  `Software Manual for the Elementary Functions' (1980) by
W. J. Cody and W. Waite. Although both programs try to discover
the Radix, Precision and range (over/underflow thresholds)
of the arithmetic, this program tries to cope with a wider variety
of pathologies, and to say how well the arithmetic is implemented.
The program is based upon a conventional radix representation for
floating-point numbers, but also allows logarithmic encoding
as used by certain early WANG machines.

BASIC version of this program (C) 1983 by Prof. W. M. Kahan;
see source comments for more history.

To continue, press RETURN
Diagnosis resumes after milestone Number 3
          Page: 4

Program is now RUNNING tests on small integers:
-1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.

Searching for Radix and Precision.
Radix = 2 .
Closest relative separation found is U1 = 1.11022302462516e-16

Recalculating radix and precision
confirms closest relative separation U1 .
Radix confirmed.
The number of significant digits of the Radix is 53

To continue, press RETURN
Diagnosis resumes after milestone Number 30
          Page: 5

Subtraction appears to be normalized, as it should be.
Checking for guard digit in F*, F/, and F-.
     F*, F/, and F- appear to have guard digits, as they should.

To continue, press RETURN
Diagnosis resumes after milestone Number 40
          Page: 6

Checking rounding on multiply, divide and add/subtract.
Multiplication appears to round correctly.
Division appears to round correctly.
Addition/Subtraction appears to round correctly.
Checking for sticky bit.
Sticky bit apparently used correctly.

Does Multiplication commute?  Testing on 20 random pairs.
     No failures found in 20 integer pairs.

Running test of square root(x).
Testing if sqrt(X * X) == X for 20 Integers X.
Test for sqrt monotonicity.
sqrt has passed a test for Monotonicity.
Testing whether sqrt is rounded or chopped.
Square root appears to be correctly rounded.

To continue, press RETURN
Diagnosis resumes after milestone Number 90
          Page: 7

Testing powers Z^i for small Integers Z and i.
... no discrepancies found.

Seeking Underflow thresholds UfThold and E0.
Smallest strictly positive number found is E0 = 4.94065645841247e-324
Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
What the machine gets for (Z + Z) / Z is  2
This is O.K., provided Over/Underflow has NOT just been signaled.
Underflow is gradual; it incurs Absolute Error =
(roundoff in UfThold) < E0.
The Underflow threshold is 2.22507385850720e-308 below which
calculation may suffer larger Relative error than merely roundoff.
Since underflow occurs below the threshold
UfThold = 2.00000000000000e+00 ^-1.02200000000000e+03
only underflow should afflict the expression
      2.00000000000000e+00 ^-2.04400000000000e+03
actually calculating yields: 0.00000000000000e+00
This computed value is O.K.

Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065e+00 as X -> 1.
Accuracy seems adequate.
Testing powers Z^Q at four nearly extreme values.
... no discrepancies found.


To continue, press RETURN
Diagnosis resumes after milestone Number 160
          Page: 8

Searching for Overflow threshold:
This may generate an error.
Can `Z = -Y' overflow?
Trying it on Y = -inf
Seems O.K.
Overflow threshold is V  = 1.79769313486232e+308
Overflow saturates at V0 = inf
No Overflow should be signaled for V * 1 = 1.79769313486232e+308
                           nor for V / 1 = 1.79769313486232e+308
Any overflow signal separating this * from the one
above is a DEFECT.


To continue, press RETURN
Diagnosis resumes after milestone Number 190
          Page: 9


What message and/or values does Division by Zero produce?
This can interupt your program.  You can skip this part if you wish.
Do you wish to compute 1 / 0?
    Trying to compute 1 / 0 produces ...inf

Do you wish to compute 0 / 0?
    Trying to compute 0 / 0 produces ...-nan

To continue, press RETURN
Diagnosis resumes after milestone Number 220
          Page: 10


FAILUREs  encountered = 0
SERIOUS DEFECTs  discovered = 0
DEFECTs  discovered = 0
FLAWs  discovered = 0

No failures, defects nor flaws have been discovered.
Rounding appears to conform to the proposed IEEE standard P754
except for possibly Double Roundingduring Gradual Underflow.
The arithmetic diagnosed appears to be Excellent!
END OF TEST.
  ok
cold
  ok
c" ../fsl" chdir .
0  ok
\ ===  fsl/fsl-tester.4th  ===
include fsl-tester

/home/krishna/kforth/ans-words.4th

FSL-UTIL          V1.3d          21 Apr 2024   EFC, KM
/home/krishna/kforth/modules.4th

DYNMEM            V1.9d          19 February  2012   EFC
/home/krishna/kforth/strings.4th

/home/krishna/kforth/struct-200x.4th

/home/krishna/kforth/ttester.4th



isaac.f translated from Bob Jenkins' rand.c
by Pierre Abbat    Version 1.4   1999-03-23

TESTING ISAAC



PRNG              V1            28 November  2007  JVN TEST is redefined

TESTING PRNG



SPH-BES           V1.0b          25 November  2007   JVN
TESTING SPHBES



Logistic          V1.2c          27 October 2007   EFC
TESTING LOGISTIC  D_LOGISTIC



POLRAT            V1.2f          19 February  2012  MH
TESTING POLINT
TESTING RATINT



EXPINT     V1.1c                 27 October   2007   EFC
TESTING expint



HORNER            V1.5d          19 February  2012   EFC
TESTING }HORNER



AITKEN            V1.1.5         19 February  2012 EFC, KM
TESTING AITKEN



HERMITE           V1.2c          19 February  2012 EFC
TESTING HERMITE



ELIP     V1.2c                 27 September 2007   EFC
TESTING ELIP1  ELIP2



ELIP12     V1.1c                 19 February  2012   EFC
TESTING E[k]  K[k]



POLYS             V1.1e          19 February  2012 EFC
TESTING CH_N
TESTING HE_N
TESTING LA_N
TESTING LE_N
TESTING BE_N
TESTING LAG_N



FACTORIAL         V1.1           18 October 1994   EFC
TESTING FACTORIAL



GAMMA             V1.2e          19 February  2012  EFC
TESTING GAMMA
TESTING RGAMMA



ERF               V1.03     19 February  2012
TESTING ERF1
TESTING ERF
TESTING ERFC



PCYLFUN      V1.1d               19 February  2012   EFC
TESTING UPCF  VPCF



SHANKS            V1.0b          19 February  2012   EFC
TESTING SHANKS



HILBERT           V1.2           15 May     2021   EFC
TESTING HILBERT  HILBERT-INV  HILBERT-DET



LUFACT            V1.6j         11 December  2023   EFCikm
TESTING LUMATRIX-INIT  LUFACT  LU-MALLOC  LU-FREE



DETS              V1.0g          16 May       2021  EFC
TESTING DET



BACKSUB           V1.2g          16 May       2021   EFC
TESTING problem 1
TESTING problem 2



INVM              V1.2e          16 May       2021   EFC
TESTING INVM



GAUSSJ & MATRICES V1.1d           07 July     2021 MH,KM
TESTING  GET-ROW  GET-COLUMN  TRANSPOSE
TESTING  MAT-  MAT+  }}ABSMAT  MAT+!  MAT^-1  MAT*
TESTING GAUSSJ  SOLVE



DFourier          V1.3b          19 February  2012   EFC, KM FAC is 
redefined

TESTING DFT-T
TESTING DFT-1
TESTING DFT-2
TESTING DFT-2F



ADAPTINT          V1.2          14 August   2009  JVN
TESTING )INTEGRAL
F1 is redefined



GAULEG            V1.1g          07 May       2024   EFC,KM
TESTING GAULEG GL-INTEGRATE



QUADRATIC         V1.3c         19 February  2012   KM, HD
TESTING solve_quadratic



CUBIC             V1.1d         25 November  2007  JVN X' is redefined

TESTING CUBIC-ROOTS



LAGROOTS          V1.0.2b        19 February  2012  JVN, CGM
TESTING }ZSYNTH
TESTING ZROOTS



REGFALSI          V1.1g          10 May       2021  JVN F1 is redefined

TESTING )ROOT



RUNGE4            V1.2g         09 July      2021   EFC A1 is redefined
A2 is redefined

TESTING E&P Non-Stiff ODE Problems A1 to A4 (Adaptive Step)
TESTING Damped Vibration (Adaptive Step)
TESTING Charging Capacitor (Adaptive Step)
TESTING Damped Vibration (Fixed Step)
TESTING Charging Capacitor (Fixed Step)



16 Bit Cyclic Redundancy Checksums. Version FSL1.0  29th October 1994
             Gordon Charlton - gordon@charlton.demon.co.uk

S1 is redefined
S2 is redefined

TESTING  >XMODEM  >X.25  >CRC-CCITT



Permutations & Combinations. Version FSL1.0  27th October 1994
         Gordon Charlton - gordon@charlton.demon.co.uk


TESTING PERMS  COMBS



GAUSS             V1.0c          19 February  2012  EFC
TESTING GAUSS



R250              V1.5c          19 February  2012   EFC
TESTING  LCM_RAND

TESTING  R250D



SHELLSORT         v1.3c          30 November 2023  cgm,km
TESTING }SHELLSORT


Goodbye.
$
====== End of system tests transcript ======


Back to comp.lang.forth | Previous | NextNext in thread | Find similar


Thread

kForth-32 v 2.7.0 Krishna Myneni <krishna.myneni@ccreweb.org> - 2026-03-19 12:34 -0500
  Re: kForth-32 v 2.7.0 Krishna Myneni <krishna.myneni@ccreweb.org> - 2026-03-19 12:37 -0500
  Re: kForth-32 v 2.7.0 thresh3@fastmail.com (Lev) - 2026-03-19 17:54 +0000
    Re: kForth-32 v 2.7.0 Krishna Myneni <krishna.myneni@ccreweb.org> - 2026-03-19 20:45 -0500
  Re: kForth-32 v 2.7.0 Krishna Myneni <krishna.myneni@ccreweb.org> - 2026-04-12 10:25 -0500
    Re: kForth-32 v 2.7.0 Krishna Myneni <krishna.myneni@ccreweb.org> - 2026-05-17 17:53 -0500

csiph-web