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


Groups > comp.lang.forth > #34896 > unrolled thread

Advanced BASIC in FORTH

Started byilikeforth@gmail.com
First post2014-12-13 01:16 -0800
Last post2014-12-16 04:15 -0800
Articles 19 — 8 participants

Back to article view | Back to comp.lang.forth


Contents

  Advanced BASIC in FORTH ilikeforth@gmail.com - 2014-12-13 01:16 -0800
    Re: Advanced BASIC in FORTH mhx@iae.nl - 2014-12-13 05:23 -0800
    Re: Advanced BASIC in FORTH ilikeforth@gmail.com - 2014-12-13 12:32 -0800
    Re: Advanced BASIC in FORTH mhx@iae.nl (Marcel Hendrix) - 2014-12-13 22:47 +0200
    Re: Advanced BASIC in FORTH ilikeforth@gmail.com - 2014-12-13 15:26 -0800
      Re: Advanced BASIC in FORTH mix <mix@test.net> - 2014-12-14 03:42 +0000
      Re: Advanced BASIC in FORTH mix <mix@test.net> - 2014-12-14 03:45 +0000
    Re: Advanced BASIC in FORTH ilikeforth@gmail.com - 2014-12-13 20:52 -0800
      Re: Advanced BASIC in FORTH mix <mix@test.net> - 2014-12-14 04:58 +0000
    Re: Advanced BASIC in FORTH hughaguilar96@gmail.com - 2014-12-13 21:36 -0800
    Re: Advanced BASIC in FORTH ilikeforth@gmail.com - 2014-12-14 01:19 -0800
      Re: Advanced BASIC in FORTH mix <mix@test.net> - 2014-12-14 09:58 +0000
      Re: Advanced BASIC in FORTH hughaguilar96@gmail.com - 2014-12-14 12:52 -0800
      Re: Advanced BASIC in FORTH "Rod Pemberton" <buzz@notnotnontnooatno.cmm> - 2014-12-15 18:27 -0500
    Re: Advanced BASIC in FORTH ilikeforth@gmail.com - 2014-12-14 02:04 -0800
    Re: Advanced BASIC in FORTH ilikeforth@gmail.com - 2014-12-14 20:08 -0800
    Re: Advanced BASIC in FORTH ilikeforth@gmail.com - 2014-12-15 18:44 -0800
      Re: Advanced BASIC in FORTH albert@spenarnc.xs4all.nl (Albert van der Horst) - 2014-12-16 10:38 +0000
    Re: Advanced BASIC in FORTH Ching-Tang Tseng <ilikeforth@gmail.com> - 2014-12-16 04:15 -0800

#34896 — Advanced BASIC in FORTH

Fromilikeforth@gmail.com
Date2014-12-13 01:16 -0800
SubjectAdvanced BASIC in FORTH
Message-ID<2a675a12-427d-4953-8135-dc018987d4cb@googlegroups.com>
Quadratic Equation

Why I show you such a program for the quadratic equation?

(1)	In a Real number calculation environment, if the argument of SQRT (SQuare RooT function) is a negative number, the answer will be 0. In general, SQRT can not give you the answer of two image numbers for a negative number argument automatically.  
(2)	I would like to show you the ability of file I/O (input and output) in ABC FORTH system. We are familiar with quadratic equation. This program then can simplify my intention. 
(3)	General mathematic calculation system has no complex number function, ABC FORTH system has. This program deal with real number coefficients equation first, but do the checking by complex number function later. Such an arrangement is on purposed.
(4) Input data file can be built by any kinds of simple plain text editor even by EXCL system. Looking inside to this demonstration, integers, double numbers and floating point numbers are all mixed together. ABC FORTH is able to accept all of them directly, with FORTH style comments after \ as well. 

Win32Forth is the mother system of ABC FORTH temporarily. Sorry, it is hard to me to answer any question from you owing to my poor English. You are welcome to discuss this demo code in English. I am reading here everyday.

 (30)QuadraticEq.f
ABC FORTH file I/O demo code
Author	: Ching-Tang Tseng, Hamilton NZ 
Date     : 6 Aug 2012
Contact	: ilikeforth@gmail.com
Website	: http://forthfortnight.blogspot.com

2 Integers I N
20 3 matrix coef
\ BRA(i) is a primitive BASIC style Real Array in ABC FORTH
: ReadCoef ( -- )
BASIC
10 run S" (30-1)QuadraticEqCoeff.f" Get-File
20 run GetOneLineData
30 let N = INT ( BRA ( 1 ) )	
40 for I = 1 to N
50 run GetOneLineData
60 let { coef ( I 1 ) = BRA ( 2 ) }
70 let { coef ( I 2 ) = BRA ( 3 ) }
80 let { coef ( I 3 ) = BRA ( 4 ) }
90 next I
100 end
;
9 Reals a b c x f(x) x1 x2 d dsq
: RealRootCheck ( -- )
BASIC
10 let { f(x) = a * x * x + b * x + c }
20 end
;
5 COMPLEXS za zb zc zx f(zx)
: ComplexRootCheck ( -- )
BASIC
10 let [ za = r>zr ( a ) + r>zi ( 0 ) ]
:: [ zb = r>zr ( b ) + r>zi ( 0 ) ]
:: [ zc = r>zr ( c ) + r>zi ( 0 ) ]
20 let [ f(zx) = za * zx * zx + zb * zx + zc ]
30 end
;
: Once ( -- )
BASIC
10 if { a = 0 AND b = 0 } then 400
20 if { a = 0 } then 300
30 let { d = b * b - ( 4 * a * c ) }
40 if { d >= 0 } then 100
50 goto 200
100 let { dsq = SQRT ( d ) }
:: { x1 = ( NEGATE b + dsq ) / ( 2 * a ) }
:: { x2 = ( NEGATE b - dsq ) / ( 2 * a ) }
110 let { x = x1 }
120 run RealRootCheck
130 print { " Root x1:" , x1 ; " ==> f(x1) = " , f(x) }
140 let { x = x2 }
150 run RealRootCheck
160 print { " Root x2:" , x2 ; " ==> f(x2) = " , f(x) }
170 goto 900
200 let { d = ABS ( ( SQRT ( ( 4 * a * c ) - b * b ) ) / ( 2 * a ) ) }
210 let { x1 = negate b / ( 2 * a ) }
220 let [ zx = r>zr ( x1 ) + r>zi ( d ) ]
230 run ComplexRootCheck
240 print [ " Root x1 = " ; zx ; " ==> f(x1) = " ; f(zx) ]
245 print { " ABS(f(x1)) = " ; ZABS ( f(zx) ) }
250 let [ zx = r>zr ( x1 ) - r>zi ( d ) ]
260 run ComplexRootCheck
270 print [ " Root x2 = " ; zx ; " ==> f(x2) = " ; f(zx) ]
275 print { " ABS(f(x2)) = " ; ZABS ( f(zx) ) }
280 goto 900
300 let { x1 = NEGATE c / b }
310 let { f(x) = b * x1 + c }
320 print { " This equation has only one root x = " ; x1 ; " ==> f(x) = " ; f(x) }
330 goto 900
400 print " This is not an appropriate quadratic equation!"
900 run CR
910 end
;
: test ( -- )
BASIC
10 let { a = 8 } :: { b = -33.33 } :: { c = 9.876e2 }
20 print { " Equation:( " ; a ; " )*x^2 + ( " ; b ; " )*x + ( " ; c ; " ) = 0" }
30 run ONCE
40 end
;
: hi ( -- )
BASIC
10 print " Typical real coefficient quadratic equation: ax^2 + bx + c = 0 " CR
20 print " Please enter its three coefficients: a b c " CR
30 inputR a , b , c
40 run ONCE
50 end
;
: main ( -- )
PAGE
BASIC
10 run ReadCoef
20 run S" (30-2)OutputResult.f" new-file
30 run >file
40 for I = 1 to N
50 let { a = COEF ( I 1 ) }
:: { b = COEF ( I 2 ) }
:: { c = COEF ( I 3 ) }
60 print " ( " ; I ; " )"
; { " Equation:( " ; a ; " )*x^2 + ( " ; b ; " )*x + ( " ; c ; " ) = 0" }
70 run Once
80 next I
90 run file>
100 run S" (30-2)OutputResult.f" save-file
110 run filetype
120 end
;
cr cr
.( Usage: ) cr
.( 1. test : for fixed data set using. ) cr
.( 2. hi : for interactive input data using. ) cr
.( 3. main : for file I/O data sets using. ) cr
\S
Part 1 : Contents of (30-1)QuadraticEqCoeff.f
10				\ this line means total are 10 sets given data
1 3 2 1			\ this line means set (1) 3x^2+2x+1=0 
2 9.85 3.23 18	\ this line means set (2) 9.85x^2+3.23x+18=0
3 1 0 -1
4 33 57.62e+12 900e+14
5 0 0 9
6 0 9 0
7 40 0 0
8 0 12 -400
9 9 -9 9
10 -1 2 -3
Part 2 : Contents of (30-2)OutputResult.f
( 1 )Equation:( 3.00000 )*x^2 + ( 2.00000 )*x + ( 1.00000 ) = 0
Root x1 = -.333333 + .471405 i ==> f(x1) = 0.00000E0 + 1.11022E-16 i
ABS(f(x1)) = 1.11022E-16
Root x2 = -.333333 - .471405 i ==> f(x2) = -4.44089E-16 + 0.00000E0 i
ABS(f(x2)) = 4.44089E-16
( 2 )Equation:( 9.85000 )*x^2 + ( 3.23000 )*x + ( 18.0000 ) = 0
Root x1 = -.163959 + 1.34184 i ==> f(x1) = 3.55271E-15 + 0.00000E0 i
ABS(f(x1)) = 3.55271E-15
Root x2 = -.163959 - 1.34184 i ==> f(x2) = 3.55271E-15 + 0.00000E0 i
ABS(f(x2)) = 3.55271E-15
( 3 )Equation:( 1.00000 )*x^2 + ( 0.00000E0 )*x + ( -1.00000 ) = 0
Root x1: 1.00000 ==> f(x1) = 0.00000E0
Root x2: -1.00000 ==> f(x2) = 0.00000E0
( 4 )Equation:( 33.0000 )*x^2 + ( 5.76200E13 )*x + ( 9.00000E16 ) = 0
Root x1: -1561.96 ==> f(x1) = 1.83714E9
Root x2: -1.74606E12 ==> f(x2) = -8.89553E9
( 5 )Equation:( 0.00000E0 )*x^2 + ( 0.00000E0 )*x + ( 9.00000 ) = 0
This is not an appropriate quadratic equation!
( 6 )Equation:( 0.00000E0 )*x^2 + ( 9.00000 )*x + ( 0.00000E0 ) = 0
This equation has only one root x = -0.00000E0 ==> f(x) = 0.00000E0
( 7 )Equation:( 40.0000 )*x^2 + ( 0.00000E0 )*x + ( 0.00000E0 ) = 0
Root x1: 0.00000E0 ==> f(x1) = 0.00000E0
Root x2: -0.00000E0 ==> f(x2) = 0.00000E0
( 8 )Equation:( 0.00000E0 )*x^2 + ( 12.0000 )*x + ( -400.000 ) = 0
This equation has only one root x = 33.3333 ==> f(x) = 0.00000E0
( 9 )Equation:( 9.00000 )*x^2 + ( -9.00000 )*x + ( 9.00000 ) = 0
Root x1 = .500000 + .866025 i ==> f(x1) = -1.77636E-15 + 0.00000E0 i
ABS(f(x1)) = 1.77636E-15
Root x2 = .500000 - .866025 i ==> f(x2) = -1.77636E-15 + 0.00000E0 i
ABS(f(x2)) = 1.77636E-15
( 10 )Equation:( -1.00000 )*x^2 + ( 2.00000 )*x + ( -3.00000 ) = 0
Root x1 = 1.00000 + 1.41421 i ==> f(x1) = 0.00000E0 + 4.44089E-16 i
ABS(f(x1)) = 4.44089E-16
Root x2 = 1.00000 - 1.41421 i ==> f(x2) = 0.00000E0 + 0.00000E0 i
ABS(f(x2)) = 0.00000E0
 
Part 3 : Output on the screen
ok
test
Equation:( 8.00000 )*x^2 + ( -33.3300 )*x + ( 987.600 ) = 0
Root x1 = 2.08312 + 10.9138 i ==> f(x1) = 0.00000E0 + 0.00000E0 i
ABS(f(x1)) = 0.00000E0
Root x2 = 2.08312 - 10.9138 i ==> f(x2) = -1.13687E-13 - 5.68434E-14 i
ABS(f(x2)) = 1.27106E-13
ok
hi
Typical real coefficient quadratic equation: ax^2 + bx + c = 0
Please enter its three coefficients: a b c
? 1 1.23e2 139.55
Root x1: -1.14522 ==> f(x1) = 0.00000E0
Root x2: -121.855 ==> f(x2) = 7.38964E-13
ok
main
Fileid is: 428
126 Bytes are read into the Fadr RAM buffer!
fileid is: 428
0 Bytes are read into the Fadr RAM buffer!
fileid is: 428
2011 Bytes had been written out to a file!
( 1 )Equation:( 3.00000 )*x^2 + ( 2.00000 )*x + ( 1.00000 ) = 0
Root x1 = -.333333 + .471405 i ==> f(x1) = 0.00000E0 + 1.11022E-16 i
ABS(f(x1)) = 1.11022E-16
Root x2 = -.333333 - .471405 i ==> f(x2) = -4.44089E-16 + 0.00000E0 i
ABS(f(x2)) = 4.44089E-16
( 2 )Equation:( 9.85000 )*x^2 + ( 3.23000 )*x + ( 18.0000 ) = 0
Root x1 = -.163959 + 1.34184 i ==> f(x1) = 3.55271E-15 + 0.00000E0 i
ABS(f(x1)) = 3.55271E-15
Root x2 = -.163959 - 1.34184 i ==> f(x2) = 3.55271E-15 + 0.00000E0 i
ABS(f(x2)) = 3.55271E-15
( 3 )Equation:( 1.00000 )*x^2 + ( 0.00000E0 )*x + ( -1.00000 ) = 0
Root x1: 1.00000 ==> f(x1) = 0.00000E0
Root x2: -1.00000 ==> f(x2) = 0.00000E0
( 4 )Equation:( 33.0000 )*x^2 + ( 5.76200E13 )*x + ( 9.00000E16 ) = 0
Root x1: -1561.96 ==> f(x1) = 1.83714E9
Root x2: -1.74606E12 ==> f(x2) = -8.89553E9
( 5 )Equation:( 0.00000E0 )*x^2 + ( 0.00000E0 )*x + ( 9.00000 ) = 0
This is not an appropriate quadratic equation!
( 6 )Equation:( 0.00000E0 )*x^2 + ( 9.00000 )*x + ( 0.00000E0 ) = 0
This equation has only one root x = -0.00000E0 ==> f(x) = 0.00000E0
( 7 )Equation:( 40.0000 )*x^2 + ( 0.00000E0 )*x + ( 0.00000E0 ) = 0
Root x1: 0.00000E0 ==> f(x1) = 0.00000E0
Root x2: -0.00000E0 ==> f(x2) = 0.00000E0
( 8 )Equation:( 0.00000E0 )*x^2 + ( 12.0000 )*x + ( -400.000 ) = 0
This equation has only one root x = 33.3333 ==> f(x) = 0.00000E0
( 9 )Equation:( 9.00000 )*x^2 + ( -9.00000 )*x + ( 9.00000 ) = 0
Root x1 = .500000 + .866025 i ==> f(x1) = -1.77636E-15 + 0.00000E0 i
ABS(f(x1)) = 1.77636E-15
Root x2 = .500000 - .866025 i ==> f(x2) = -1.77636E-15 + 0.00000E0 i
ABS(f(x2)) = 1.77636E-15
( 10 )Equation:( -1.00000 )*x^2 + ( 2.00000 )*x + ( -3.00000 ) = 0
Root x1 = 1.00000 + 1.41421 i ==> f(x1) = 0.00000E0 + 4.44089E-16 i
ABS(f(x1)) = 4.44089E-16
Root x2 = 1.00000 - 1.41421 i ==> f(x2) = 0.00000E0 + 0.00000E0 i
ABS(f(x2)) = 0.00000E0
  ok

[toc] | [next] | [standalone]


#34898

Frommhx@iae.nl
Date2014-12-13 05:23 -0800
Message-ID<487cd537-5c05-4d1b-9bd4-732613c0e4b1@googlegroups.com>
In reply to#34896
On Saturday, December 13, 2014 10:16:55 AM UTC+1, ilike...@gmail.com wrote:
> Quadratic Equation
> 
> Why I show you such a program for the quadratic equation?

What about this?

ANEW -ctest
NEEDS -fsl_util

: QROOTS ( F: qa qb qc -- x1r x1i x2r x2i )
	0e FLOCALS| q qc qb qa |

	qb FSQR  qa 4e F*  qc F*  F- 
	FDUP F0< IF  FABS FSQRT ( root)
		     qb F0> IF  FNEGATE  ENDIF	F2/
		     qb F2/ FNEGATE I,R->Z  
		     qa F/ FSWAP qa F/ FSWAP
		     ZDUP ZCONJUGATE
	       ELSE  FSQRT
	       	     qb F0< IF  qb FSWAP F- 
			  ELSE  qb F+ 
		  	 ENDIF  F2/ FNEGATE TO q
		     q  qa F/ 0e R,I->Z
		     qc q  F/ 0e R,I->Z 
	      ENDIF ;

: eval ( F: z a b c -- r ) 
	FLOCALS| c b a | ZLOCAL z  
	z ZSQR a ZSCALE  z b ZSCALE Z+  c 0e R,I->Z Z+  ZABS ; 

: solve ( F: a b c -- ) 
	FLOCALS| c b a |
	CR a FE. ." * x^2 + " b FE. ." * x + " c FE. ." = 0 -> " 
	a b c qroots
	CR Tab EMIT ZDUP Z. ."  => " a b c eval +E.  
	CR Tab EMIT ZDUP Z. ."  => " a b c eval +E. ;

 3e 2e 1e solve
 9.85e 3.23e 18e solve
 1e 0e -1e solve
 33e 5.762e13 9e16 solve
 0e 0e 9e solve
 0e 9e 0e solve
 40e 0e 0e solve
 0e 12e -400e solve
 9e -9e 9e solve
 -1e 2e -3e solve

( doesn't catch all exceptions )
FORTH>  3e 2e 1e solve
3.000000e0 * x^2 + 2.000000e0 * x + 1.000000e0 = 0 ->
        ( -3.333333e-0001  4.714045e-0001 ) =>  5.4210108624275221700e-0020
        ( -3.333333e-0001 -4.714045e-0001 ) =>  5.4210108624275221700e-0020 ok
FORTH>  9.85e 3.23e 18e solve
9.850000e0 * x^2 + 3.230000e0 * x + 18.000000e0 = 0 ->
        ( -1.639594e-0001  1.341838e+0000 ) =>  0.0000000000000000000e+0000
        ( -1.639594e-0001 -1.341838e+0000 ) =>  0.0000000000000000000e+0000 ok
FORTH>  1e 0e -1e solve
1.000000e0 * x^2 + 0.000000e0 * x + -1.000000e0 = 0 ->
        (  1.000000e+0000  0.000000e+0000 ) =>  0.0000000000000000000e+0000
        ( -1.000000e+0000  0.000000e+0000 ) =>  0.0000000000000000000e+0000 ok
FORTH>  33e 5.762e13 9e16 solve
33.000000e0 * x^2 + 57.620000e12 * x + 90.000000e15 = 0 ->
        ( -1.561958e+0003  0.000000e+0000 ) =>  0.0000000000000000000e+0000
        ( -1.746061e+0012  0.000000e+0000 ) =>  4.7841280000000000000e+0006 ok
FORTH>  0e 0e 9e solve
0.000000e0 * x^2 + 0.000000e0 * x + 9.000000e0 = 0 ->
        (            -INF  0.000000e+0000 ) =>                         -NAN
        (            -NAN  0.000000e+0000 ) =>                         -NAN ok
FORTH>  0e 9e 0e solve
0.000000e0 * x^2 + 9.000000e0 * x + 0.000000e0 = 0 ->
        ( -0.000000e+0000  0.000000e+0000 ) =>  0.0000000000000000000e+0000
        (            -INF  0.000000e+0000 ) =>                         -NAN ok
FORTH>  40e 0e 0e solve
40.000000e0 * x^2 + 0.000000e0 * x + 0.000000e0 = 0 ->
        (            -NAN  0.000000e+0000 ) =>                         -NAN
        ( -0.000000e+0000  0.000000e+0000 ) =>  0.0000000000000000000e+0000 ok
FORTH>  0e 12e -400e solve
0.000000e0 * x^2 + 12.000000e0 * x + -400.000000e0 = 0 ->
        (  3.333333e+0001  0.000000e+0000 ) =>  0.0000000000000000000e+0000
        (            -INF  0.000000e+0000 ) =>                         -NAN ok
FORTH>  9e -9e 9e solve
9.000000e0 * x^2 + -9.000000e0 * x + 9.000000e0 = 0 ->
        (  5.000000e-0001 -8.660254e-0001 ) =>  0.0000000000000000000e+0000
        (  5.000000e-0001  8.660254e-0001 ) =>  0.0000000000000000000e+0000 ok
FORTH>  -1e 2e -3e solve
-1.000000e0 * x^2 + 2.000000e0 * x + -3.000000e0 = 0 ->
        (  1.000000e+0000 -1.414214e+0000 ) =>  0.0000000000000000000e+0000
        (  1.000000e+0000  1.414214e+0000 ) =>  0.0000000000000000000e+0000 ok

-marcel

[toc] | [prev] | [next] | [standalone]


#34903

Fromilikeforth@gmail.com
Date2014-12-13 12:32 -0800
Message-ID<68627845-33b1-40f6-b080-b661b0962b1b@googlegroups.com>
In reply to#34896
Marcel:

Thanks for your great response. Especially it has the floating point local variable function inside. 

Yes, we are able to simplify the program to a few lines only as following word QUAD. Then, everybody even the middle high school student can understand what does it mean? Quadratic equation is just a simple example for demo. File I/O function let me more easy to deal with the problem while the input data are a lot of sets. So I post this program here.  

I prefer to write BASIC style program in FORTH for mathematic calculation. Sorry I am too old and not rich enough to buy your iForth. I am able to build ABC FORTH for all FORTH system. I did it in Win32Forth first. Because it is free.

How about your iForth business? Wish you make a lot of money by it.  


\ Roots of complex coefficient quadratic equation
\ 2011-04-12 Ching-Tang Tseng, Hamilton NZ
\ ilikeforth@gmail.com
\ Equation: F(x)=A*x^2+B*x+C=0  roots: x1,x2

8 Comlplexs A B C Disc x1 x2 F(x1) F(x2)

: Reset ( -- )
{[ A = 0 + 0 i ]} {[ B = 0 + 0 i ]} {[ C = 0 + 0 i ]}
{[ Disc = 0 + 0 i ]}
{[ x1 = 0 + 0 i ]} {[ x2 = 0 + 0 i ]}
;

: QUAD ( -- )
BASIC
10 LET [ Disc = SQRT ( B * B - ( 4 + 0 i ) * A * C ) ]
20 LET [ x1 = ( ( NEGATE ( B ) + Disc ) ) / ( ( 2 + 0 i ) * A ) ]
30 LET [ x2 = ( ( NEGATE ( B ) - Disc ) ) / ( ( 2 + 0 i ) * A ) ]
40 LET [ F(x1) = A * x1 * x1 + B * x1 + C ]
50 LET [ F(x2) = A * x2 * x2 + B * x2 + C ]
60 END
;

: EnterCoefficients ( -- )
BASIC
10 PRINT " Enter coefficient A, ( 3 - 5 i ) must type: 3  -5 "
20 INPUTZ A
30 RUN CR
40 PRINT " Enter coefficient B, ( -2.5 + 0 i ) must type: -2.5  0 "
50 INPUTZ B
60 RUN CR
70 PRINT " Enter coefficient C, ( 0 + 6.3 i ) must type: 0  6.3 "
80 INPUTZ C
90 RUN CR
100 END
;

: MAIN ( -- )
BASIC
10 RUN CR
20 PRINT " Quadratic Eq.: A*x^2+B*x+C=0  "
30 RUN CR
40 RUN Reset
50 RUN EnterCoefficients
60 RUN QUAD
70 RUN CR
80 PRINT [ " x1 =  " ; x1 ]
90 PRINT [ " F(x1)=  " ; F(x1) ]
100 RUN CR
110 PRINT [ " x2 =  " ; x2 ]
120 PRINT [ " F(x2)=  " ; F(x2) ]
130 RUN CR CR
140 END
;

\s
page
 ok
main 

Quadratic Eq.: A*x^2+B*x+C=0  

Enter coefficient A, ( 3 - 5 i ) must type: 3  -5 ? 3 -5

Enter coefficient B, ( -2.5 + 0 i ) must type: -2.5  0 ? -2.5 0

Enter coefficient C, ( 0 + 6.3 i ) must type: 0  6.3 ? 0 6.3


x1 =  -8.761507623E-1 + 4.450307471E-1 i  
F(x1)=  -1.776356839E-15 + 0.000000000E0 i  

x2 =  1.096738998E0 - 7.738368827E-2 i  
F(x2)=  -2.664535259E-15 - 1.776356839E-15 i  

 ok

[toc] | [prev] | [next] | [standalone]


#34906

Frommhx@iae.nl (Marcel Hendrix)
Date2014-12-13 22:47 +0200
Message-ID<94561390918433@frunobulax.edu>
In reply to#34896
ilikeforth@gmail.com writes Re: Advanced BASIC in FORTH
[..]
> I prefer to write BASIC style program in FORTH for mathematic calculation. 
> Sorry I am too old and not rich enough to buy your iForth. [..]

You don't need to be rich and you can't be too old. If the price is 
out of range, it suffices to promise that you will use iForth to 
promote Forth in some way.

> How about your iForth business? Wish you make a lot of money by it.
[..]

That is not the aim.

-marcel

[toc] | [prev] | [next] | [standalone]


#34907

Fromilikeforth@gmail.com
Date2014-12-13 15:26 -0800
Message-ID<f48fe075-f287-4151-877b-de7ace34bea6@googlegroups.com>
In reply to#34896
Marcel,

I am glad to have your kindly reply. 

For more than 30 years, I used to use FORTH and promote FORTH only. There was my name in the back cover page of FORTH DIMENSIONS. 

I have no credit card, no car, no mobile phone, am really not rich enough. My computers come from many others, they gave up then I picked up. Christmas day is coming. I save my printing paper fee to buy a gift for my granddaughter. Reading source code on the screen is a painful working, especially for a retired man such as me, but I accepted it recently.

Many contributors included you did a lot of things for FORTH during the past 40 years. We have to say thanks to you. But I am still wish you can make money from iForth. We Chinese used to give a good wish to a good person. 

Computing is the most important function of a computer. But every time, when I face to the mathematic calculation problem, I am difficult to use pure FORTH to write the program even I use FORTH for more than 30 years already. BASIC style code in FORTH improved this difficulty. It is worth to keep going to extend this development in FORTH, original Tiny BASIC Compiler inventor is Charles H. Moore not others. 

I am concentrate in mathematic calculation. I have no requirement to write any program for any purpose except for my personal hobby or for promote FORTH. At the present time, I have the public domain FORTH system Win32Forth only.

Ching

[toc] | [prev] | [next] | [standalone]


#34908

Frommix <mix@test.net>
Date2014-12-14 03:42 +0000
Message-ID<m6j0vk$lhr$1@news.mixmin.net>
In reply to#34907
<ilikeforth@gmail.com> wrote:
> Marcel,
> 
> I am glad to have your kindly reply. 
> 
> For more than 30 years, I used to use FORTH and promote FORTH only. There
> was my name in the back cover page of FORTH DIMENSIONS. 
> 
> I have no credit card, no car, no mobile phone, am really not rich
> enough. My computers come from many others, they gave up then I picked
> up. Christmas day is coming. I save my printing paper fee to buy a gift
> for my granddaughter. Reading source code on the screen is a painful
> working, especially for a retired man such as me, but I accepted it recently.

Are you here to complain about your life? OK, I have no credit card, my car
is old, same is my phone. Instead of buying Forth systems I write them
myself. I'm cheap.

And worst of all, I have no granddaughter.

> Many contributors included you did a lot of things for FORTH during the
> past 40 years. We have to say thanks to you. But I am still wish you can
> make money from iForth. We Chinese used to give a good wish to a good person. 
> 
> Computing is the most important function of a computer. But every time,
> when I face to the mathematic calculation problem, I am difficult to use
> pure FORTH to write the program even I use FORTH for more than 30 years
> already. BASIC style code in FORTH improved this difficulty. It is worth
> to keep going to extend this development in FORTH, original Tiny BASIC
> Compiler inventor is Charles H. Moore not others. 
> 
> I am concentrate in mathematic calculation. I have no requirement to
> write any program for any purpose except for my personal hobby or for
> promote FORTH. At the present time, I have the public domain FORTH system Win32Forth only.
> 
> Ching


-- 
mix x

[toc] | [prev] | [next] | [standalone]


#34909

Frommix <mix@test.net>
Date2014-12-14 03:45 +0000
Message-ID<m6j0tp$lda$1@news.mixmin.net>
In reply to#34907
<ilikeforth@gmail.com> wrote:
> Marcel,
> 
> I am glad to have your kindly reply. 
> 
> For more than 30 years, I used to use FORTH and promote FORTH only. There
> was my name in the back cover page of FORTH DIMENSIONS. 
> 
> I have no credit card, no car, no mobile phone, am really not rich
> enough. My computers come from many others, they gave up then I picked
> up. Christmas day is coming. I save my printing paper fee to buy a gift
> for my granddaughter. Reading source code on the screen is a painful
> working, especially for a retired man such as me, but I accepted it recently.

Are you here to complain about your life? OK, I have no credit card, my car
is old, same is my phone. Instead of buying Forth systems I write them
myself. I'm cheap.

And worst of all, I have no granddaughter.

> Many contributors included you did a lot of things for FORTH during the
> past 40 years. We have to say thanks to you. But I am still wish you can
> make money from iForth. We Chinese used to give a good wish to a good person. 
> 
> Computing is the most important function of a computer. But every time,
> when I face to the mathematic calculation problem, I am difficult to use
> pure FORTH to write the program even I use FORTH for more than 30 years
> already. BASIC style code in FORTH improved this difficulty. It is worth
> to keep going to extend this development in FORTH, original Tiny BASIC
> Compiler inventor is Charles H. Moore not others. 
> 
> I am concentrate in mathematic calculation. I have no requirement to
> write any program for any purpose except for my personal hobby or for
> promote FORTH. At the present time, I have the public domain FORTH system Win32Forth only.
> 
> Ching


-- 
mix x

[toc] | [prev] | [next] | [standalone]


#34910

Fromilikeforth@gmail.com
Date2014-12-13 20:52 -0800
Message-ID<49b19219-cd2a-4712-ab6b-afb98f1840dc@googlegroups.com>
In reply to#34896
Mix,

My English is really poor, very sorry about that. It makes you misunderstand my speaking. I am not to complain anything. I am enjoyed my situation all my life. Not rich enough makes me don't over buy something else. Old enough makes me satisfied on many peoples contributed out system Win32Forth. It is a sounded enough system. Many other FORTH system are something disable in many aspect. This is not only a cheap problem. 

I sincerely send you the same good wish. Wish you can make money from your cheap FORTH system.

Am I talked too much out of FORTH? Let's back to it. Thanks for your response.

Ching  

[toc] | [prev] | [next] | [standalone]


#34911

Frommix <mix@test.net>
Date2014-12-14 04:58 +0000
Message-ID<m6j5e0$u6u$1@news.mixmin.net>
In reply to#34910
<ilikeforth@gmail.com> wrote:
> Mix,
> 
> My English is really poor, very sorry about that. It makes you
> misunderstand my speaking. I am not to complain anything. I am enjoyed my
> situation all my life. Not rich enough makes me don't over buy something
> else. Old enough makes me satisfied on many peoples contributed out
> system Win32Forth. It is a sounded enough system. Many other FORTH system
> are something disable in many aspect. This is not only a cheap problem. 
> 
> I sincerely send you the same good wish. Wish you can make money from
> your cheap FORTH system.

I am not making any money out of any Forth code I wrote. For me, Forth is
more like hobby. However, knowledge of Forth really improves my general
programming skills.

Thanks for kind words.

> Am I talked too much out of FORTH? Let's back to it. Thanks for your response.
> 
> Ching


-- 
mix x

[toc] | [prev] | [next] | [standalone]


#34912

Fromhughaguilar96@gmail.com
Date2014-12-13 21:36 -0800
Message-ID<6f9907e8-9176-4703-b73e-1992a9127045@googlegroups.com>
In reply to#34896
On Saturday, December 13, 2014 2:16:55 AM UTC-7, ilike...@gmail.com wrote:
> (3)	General mathematic calculation system has no complex number function, ABC FORTH system has. This program deal with real number coefficients equation first, but do the checking by complex number function later. Such an arrangement is on purposed.
> (4) Input data file can be built by any kinds of simple plain text editor even by EXCL system. Looking inside to this demonstration, integers, double numbers and floating point numbers are all mixed together. ABC FORTH is able to accept all of them directly, with FORTH style comments after \ as well. 

As you are interested in mathematics, you may want to look into the Forth Scientific Library:
https://www.taygeta.com/fsl/sciforth.html
This was Skip Carter's project to build a Forth library oriented toward mathematics, in the hope that Forth could replace Fortran eventually. Skip Carter is a nice fellow, and I'm sure that he would be interested in hearing from you --- you could get involved, perhaps to integrate your ABC Forth into his library.

Check out my novice package:
http://www.forth.org/novice.html

I would be interested in seeing your ABC Forth. Perhaps I could integrate some of it into my novice package for a later release (giving you credit, of course). I have some math support in my package already, but not much. I don't have complex numbers, for example --- you have already done this.

I wrote a program a long time ago (on the Apple-IIc) that would do symbolic derivatives. I have recently been thinking about upgrading that old program to ANS-Forth (I had written my own 65c02 cross-compiler, which is what the program is written in). The program only does derivatives at this time, which is pretty easy, but if I could get it to do integrals then people might be interested in using it. Are you strong at calculus? 

[toc] | [prev] | [next] | [standalone]


#34914

Fromilikeforth@gmail.com
Date2014-12-14 01:19 -0800
Message-ID<546a501c-88e8-4730-a995-2b0c2e447956@googlegroups.com>
In reply to#34896
Hugh,

May I use this name to you?

Surprise! This topic could have your response. Thanks a lot first. Second, I am afraid of getting response from you. Please don't do me anything the same as FORTH Inc. even if I have done the wrong English to express my opinion here. Otherwise, I will stop to post anything again.

Third, we both agree Skip Carter is a nice person. He did a lots contribution in mathematic calculation program and had been kept in Forth Scientific Library (f.s.l) forever. I am always referred back to it, when I developed my ABC FORTH system. Complex function in ABC FORTH is coming from there but modified a little. For example, ABS calculation of complex |z| had better don't use f/. Otherwise, it will get trouble in checking code with a complex number have 0 Real or 0 Image part. I have done a little bit work for error function (erf) in f.s.l. already, and can not say that I have any contribution on it. 

ABC FORTH coding style is far away from traditional FORTH. It is not good enough to be listed in f.s.l. I have to do more efforts on it. Charles Moore's Tiny BASIC Compiler is worth to be kept in f.s.l. My ABC FORTH is nothing. I am cooking and reorganizing all the codes from many FORTH holy persons only. But, ABC FORTH let me very easy to rewrite ALGOL, FORTRAN, BASIC, PYTHON....etc, many good codes into FORTH system. I have done it for many years and published many articles in Chinese on my personal website. 

As I remember, you have done something in MiniForth, isn't it? I have a few using experiences on it. Unfortunately, MiniForth can not to be fixed in W7. I have to recompile it again and again when I have to test something on W7. On XP system, it is ok, but still has to recompile at the first time installation. Neglect this section if I am wrong here. 

I have visited your website http://www.forth.org/novice.html for many times already. I should to learn something from you if I can. All mathematic calculation codes are my interesting. This is the first time I hear from you that you have done symbolic derivatives. It is great, I should to learn. I believe you will be a very nice friend or teacher to me in this field. During the APPLE II age, we have ROM base FORTH from Dr. Ting and Micromotion FORTH-79 from Martin Tracy. I built infix operation there and start to write mathematic calculation program in FORTH. This thing is exist more than 30 years already, and keep going in developing now.   

Marcel's page is the same. I have got L. C. Benschop's SOD64 from there. Implement out a few mathematic calculation program. Its number dot direction is reversed from PAD to HERE. I am unable to adjust the system size because I am too old to learn C again. Then SOD64 research stopped. I modified Marcel's magic matrix program into ABC FORTH. Let me have a huge testing raw data from file I/O to test my matrix determinant program. If I post these programs in public domain, I have to say thanks to them. 

I was a nuclear engineer when I was young. I dare not to say my calculus is strong. But I am sure I can do some contribution in mathematic calculation for New Zealand now.

Ching

[toc] | [prev] | [next] | [standalone]


#34915

Frommix <mix@test.net>
Date2014-12-14 09:58 +0000
Message-ID<m6jn0f$2k6$1@news.mixmin.net>
In reply to#34914
<ilikeforth@gmail.com> wrote:
> Hugh,
> 
> May I use this name to you?
> 
> Surprise! This topic could have your response. Thanks a lot first.
> Second, I am afraid of getting response from you. Please don't do me
> anything the same as FORTH Inc. even if I have done the wrong English to
> express my opinion here. Otherwise, I will stop to post anything again.
> 
> Third, we both agree Skip Carter is a nice person. He did a lots
> contribution in mathematic calculation program and had been kept in Forth
> Scientific Library (f.s.l) forever. I am always referred back to it, when
> I developed my ABC FORTH system. Complex function in ABC FORTH is coming
> from there but modified a little. For example, ABS calculation of complex
> |z| had better don't use f/. Otherwise, it will get trouble in checking
> code with a complex number have 0 Real or 0 Image part. I have done a
> little bit work for error function (erf) in f.s.l. already, and can not
> say that I have any contribution on it. 
> 
> ABC FORTH coding style is far away from traditional FORTH. It is not good
> enough to be listed in f.s.l. I have to do more efforts on it. Charles
> Moore's Tiny BASIC Compiler is worth to be kept in f.s.l. My ABC FORTH is
> nothing. I am cooking and reorganizing all the codes from many FORTH holy
> persons only. But, ABC FORTH let me very easy to rewrite ALGOL, FORTRAN,
> BASIC, PYTHON....etc, many good codes into FORTH system. I have done it
> for many years and published many articles in Chinese on my personal website. 
> 
> As I remember, you have done something in MiniForth, isn't it? I have a
> few using experiences on it. Unfortunately, MiniForth can not to be fixed
> in W7. I have to recompile it again and again when I have to test
> something on W7. On XP system, it is ok, but still has to recompile at
> the first time installation. Neglect this section if I am wrong here. 
> 
> I have visited your website http://www.forth.org/novice.html for many
> times already. I should to learn something from you if I can. All
> mathematic calculation codes are my interesting. This is the first time I
> hear from you that you have done symbolic derivatives. It is great, I
> should to learn. I believe you will be a very nice friend or teacher to
> me in this field. During the APPLE II age, we have ROM base FORTH from
> Dr. Ting and Micromotion FORTH-79 from Martin Tracy. I built infix
> operation there and start to write mathematic calculation program in
> FORTH. This thing is exist more than 30 years already, and keep going in developing now.   
> 
> Marcel's page is the same. I have got L. C. Benschop's SOD64 from there.
> Implement out a few mathematic calculation program. Its number dot
> direction is reversed from PAD to HERE. I am unable to adjust the system
> size because I am too old to learn C again. Then SOD64 research stopped.
> I modified Marcel's magic matrix program into ABC FORTH. Let me have a
> huge testing raw data from file I/O to test my matrix determinant
> program. If I post these programs in public domain, I have to say thanks to them. 
> 
> I was a nuclear engineer when I was young. I dare not to say my calculus
> is strong. But I am sure I can do some contribution in mathematic
> calculation for New Zealand now.
> 
> Ching

What is your first language? Chinese?

-- 
mix x

[toc] | [prev] | [next] | [standalone]


#34920

Fromhughaguilar96@gmail.com
Date2014-12-14 12:52 -0800
Message-ID<e44eefc9-7146-40da-a137-785b31d5af7c@googlegroups.com>
In reply to#34914
On Sunday, December 14, 2014 2:19:03 AM UTC-7, ilike...@gmail.com wrote:
> Hugh,
> 
> May I use this name to you?

Yes, that is fine.

> ABC FORTH coding style is far away from traditional FORTH. It is not good enough to be listed in f.s.l. I have to do more efforts on it. Charles Moore's Tiny BASIC Compiler is worth to be kept in f.s.l. My ABC FORTH is nothing. I am cooking and reorganizing all the codes from many FORTH holy persons only. But, ABC FORTH let me very easy to rewrite ALGOL, FORTRAN, BASIC, PYTHON....etc, many good codes into FORTH system. I have done it for many years and published many articles in Chinese on my personal website. 

Even if it is not good enough for F.S.L., it is likely good enough for the novice package. I have very little support for mathematics at this time, so there is abundant room for improvement to the novice package in this area.

> As I remember, you have done something in MiniForth, isn't it? I have a few using experiences on it. Unfortunately, MiniForth can not to be fixed in W7. I have to recompile it again and again when I have to test something on W7. On XP system, it is ok, but still has to recompile at the first time installation. Neglect this section if I am wrong here. 

I wrote the development system (MFX) for the MiniForth processor when I was employed at Testra (http://testra.com/). The MiniForth is now called the RACE on their website. I think that you are referring to a desktop-computer Forth system that is also called MiniForth but is unrelated.

> I was a nuclear engineer when I was young. I dare not to say my calculus is strong. But I am sure I can do some contribution in mathematic calculation for New Zealand now.

Well, I don't have any education beyond high-school, and I only know the little bit of calculus that my brother taught me (he has a college degree in mathematics). I'm sure your mathematics knowledge is far beyond mine. If I get that program running again, I will make it publicly available as part of the novice package. People such as yourself who know more about math than I do, can write code to improve the integral finder --- there is no exact algorithm for finding integrals that I'm aware of --- it is a skill involving heuristics, and it can be improved indefinitely.

[toc] | [prev] | [next] | [standalone]


#34941

From"Rod Pemberton" <buzz@notnotnontnooatno.cmm>
Date2014-12-15 18:27 -0500
Message-ID<op.xqxnf6u9v6dtjm@localhost>
In reply to#34914
On Sun, 14 Dec 2014 04:19:02 -0500, <ilikeforth@gmail.com> wrote:

> This is the first time I hear from you that you have
> done symbolic derivatives.

Hugh could ask his brother with a math degree for help
with improving or implementing it.

Please read the "Properties and theorems" paragraph
of Laplace transforms here:

http://en.wikipedia.org/wiki/Laplace_transform

I.e., you can use algebra to solve calculus problems,
if the calculus problems satisfy a list of constraints
required by the Laplace operator.  These constraints
are usually documented in university level textbooks.


Rod Pemberton

[toc] | [prev] | [next] | [standalone]


#34916

Fromilikeforth@gmail.com
Date2014-12-14 02:04 -0800
Message-ID<8b8013fe-405a-4d7a-8bc8-1d8f716d3bd3@googlegroups.com>
In reply to#34896
Mix, 

Yes, Chinese. 

My Chinese is better than my Forth. My Forth is better than my English. 

If you would like talk to me in Chinese, Consider for all forth friends here, please use my email, don't speak Chinese here except it is inevitable. 

Ching 

[toc] | [prev] | [next] | [standalone]


#34927

Fromilikeforth@gmail.com
Date2014-12-14 20:08 -0800
Message-ID<dbb87c6c-f956-43aa-aad1-b8cc0c29d583@googlegroups.com>
In reply to#34896
Hugh,

Thank you for kindly reply. I am happy to have you to be a good friend or may be to be a teacher to me in the future. Whoever has spent more than ten thousands hours on one thing. She or he will be a real expert on it. You did, I believe.

If you promise me, from now on, try to transfer all the time to say something on Forth Inc, divert to talk BASIC style coding in FORTH this affair with me. We are able to consider add ABC FORTH performance in your novice package. Don't hate me have such an asking. This asking will be good to most of us. We can contact via my private email, if somebody dislikes us here.

Thanks for the explanation about the difference between RACE and desktop-computer system MiniForth. Now I know it.

Mathematics knowledge is bigger than all FORTH has. Symbolic derivatives and integrals are small parts in mathematics only. A few years ago, I use it to get the base 2 logarithm (or so called Lb function) expending series, then I implemented out the natural logarithm (base e) FLN function in FORTH. ABC FORTH without symbolic D/I function for the moment. Beware! Mathematic Functions are infinitive amount. 
Hope it can really be improved indefinitely. 

High-school mathematics knowledge is enough for add-on a fundamental ABC FORTH into a sounded enough FORTH system. As to more complicated application, need the group theory knowledge to help you easy to understand how to design the data structure for different number system? In ABC FORTH, one '=' operation can have more than 20 meanings. It is related to rigorous mathematics. 

I am a doer not a talker. May be I have to stop my usual work temporarily and download your material to do some study. I will do it later.

Ching 

[toc] | [prev] | [next] | [standalone]


#34948

Fromilikeforth@gmail.com
Date2014-12-15 18:44 -0800
Message-ID<9b1bb135-8449-4d55-8265-d6f13a745f0f@googlegroups.com>
In reply to#34896
Rod, 

Yes, I agree, Laplace transform can help to solve this problem. 

I did a lot of Laplace transform exercises in school 40 something years ago. I am not a mathematician but love mathematics. When I made my mind, would like to design a FLb(base 2) function in FORTH, I was impossible to practice the Laplace transform for Lb(x) function again. No source in my personal textbooks or tables book, I had checked. Symbolic mathematics solving method by computer gave me the answer. Then, I designed out FLb function in FORTH. Once useful experience was enough to convince me pay a little bit attention on it. As I remember, our good friend Krishna Myneni had submitted this topic once here. But no more comments followed. I dare not show my poor English on such a topic. I'd better to learn it from everybody.

If somebody has some good intention walked on the positive way, encourage him please. Hugh has done some. His brother certainly can help him as well. I am unable post my huge mess code of ABC FORTH anywhere. It needs a good tidy up before to be posted out. But if he likes, I am happy to discuss BASIC style coding in FORTH with him. At least, he supported. If FORTH venders support me, give me the transparent FORTH system, detailed enough as Win32Forth, I can feedback ABC FORTH as well. But you can not ask me pay. It is unfair. I promise do promote FORTH only, not to do any other kinds of purpose. I use Windows OS only, and not familiar with C and Linux. I do not beg any one company or any one person to support me. If this is inevitable I can use it lonely only in my all life, sink my tech at last.

You can think something about it. I am living in New Zealand. If everybody can accept this Basic style coding in FORTH material, it can help all the young students of all British Commonwealth of Nations. Let them very easy to do their math practice on computer. All scientists can use it directly as well. Total instructions are 15 only. The resting have to emphasize are computer phenomena. Traditional beautiful ALGOL, FORTRAN, BASIC codes can almost transfer into FORTH directly. I did many already. 

Thank you for your teaching.

Ching

[toc] | [prev] | [next] | [standalone]


#34959

Fromalbert@spenarnc.xs4all.nl (Albert van der Horst)
Date2014-12-16 10:38 +0000
Message-ID<54900bb6$0$6849$e4fe514c@dreader36.news.xs4all.nl>
In reply to#34948
In article <9b1bb135-8449-4d55-8265-d6f13a745f0f@googlegroups.com>,
 <ilikeforth@gmail.com> wrote:
>Rod,
>
>Yes, I agree, Laplace transform can help to solve this problem.
>
>I did a lot of Laplace transform exercises in school 40 something years ago. I
>am not a mathematician but love mathematics. When I made my mind, would like to
>design a FLb(base 2) function in FORTH, I was impossible to practice the
>Laplace transform for Lb(x) function again. No source in my personal textbooks
>or tables book, I had checked. Symbolic mathematics solving method by computer
>gave me the answer. Then, I designed out FLb function in FORTH. Once useful
>experience was enough to convince me pay a little bit attention on it. As I
>remember, our good friend Krishna Myneni had submitted this topic once here.
>But no more comments followed. I dare not show my poor English on such a topic.
>I'd better to learn it from everybody.
>
>If somebody has some good intention walked on the positive way, encourage him
>please. Hugh has done some. His brother certainly can help him as well. I am
>unable post my huge mess code of ABC FORTH anywhere. It needs a good tidy up
>before to be posted out. But if he likes, I am happy to discuss BASIC style

Well don't be ashamed. Linux Torvald wasn't! Just put it an github.
Some people are very good in cleaning up a mess, and have no inspiring
idea's of their own.

>
>Thank you for your teaching.
>
>Ching

Groetjes Albert
-- 
Albert van der Horst, UTRECHT,THE NETHERLANDS
Economic growth -- being exponential -- ultimately falters.
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

[toc] | [prev] | [next] | [standalone]


#34961

FromChing-Tang Tseng <ilikeforth@gmail.com>
Date2014-12-16 04:15 -0800
Message-ID<fe0e7f58-357a-4793-a47f-f062dd94e0d5@googlegroups.com>
In reply to#34896
Albert,

Thank you for good suggestion. Github is really a nice place to post. 

ABC FORTH has been developed for many years already. My mess code had been distributed in many files. Kernel files, extending files, many different independent files, had it. I used to give my respects to all original contributors in Win32Forth. So, I did many modifications for original system then to run my ABC FORTH. If the user didn't use any ABC FORTH function. ABC FORTH is 100% the same as the original Win32Forth. No tidy up code is really difficult to post out. Post all Win32Forth code with just a little bit modification in it only, is make no sense. I must do something first if would post it out. 

I am not complaint anything to Win32Forth. Contrary, I appreciate it. For example, when you do the -15 4 / . on it, get -4 result, don't angry with it. Keep this original performance there. There are many reasons should do so. But, the main purpose of ABC FORTH is to be used to do the mathematics calculation. I need -3 not -4. I have to modify these kinds of problem in ABC FORTH working range. For mathematics calculation application, this is just one example. There are many other problems else. There are more than 10 mathematic systems (integer, floating point, complex...etc.) had been developed. But still have many other intentions could be added in. Before we have public domain Win64Forth, I have done a Win128Forth (for mathematic using not for addressing using). You can call it is another mathematic system in ABC FORTH. 

Any way, all responses are welcome and thanks.

Ching

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.forth


csiph-web