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


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

microFORTH

Started byJUERGEN <epldfpga@aol.com>
First post2017-04-25 01:15 -0700
Last post2017-05-04 17:15 -0500
Articles 20 on this page of 35 — 11 participants

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


Contents

  microFORTH JUERGEN <epldfpga@aol.com> - 2017-04-25 01:15 -0700
    Re: microFORTH "HAA" <someone@microsoft.com> - 2017-04-26 09:35 +1000
      Re: microFORTH "Elizabeth D. Rather" <erather@forth.com> - 2017-04-25 14:15 -1000
        Re: microFORTH lehs <skydda.barnen@gmail.com> - 2017-04-25 23:09 -0700
        Re: microFORTH "HAA" <someone@microsoft.com> - 2017-05-01 11:15 +1000
    Re: microFORTH David Schultz <abuse@127.0.0.1> - 2017-04-30 15:02 -0500
      Re: microFORTH rickman <gnuarm@gmail.com> - 2017-04-30 21:13 -0400
        Re: microFORTH David Schultz <abuse@127.0.0.1> - 2017-04-30 20:24 -0500
          Re: microFORTH rickman <gnuarm@gmail.com> - 2017-05-01 21:02 -0400
            Re: microFORTH Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-05-02 05:58 -0400
            Re: microFORTH Coos Haak <htrofhc@gmail.com> - 2017-05-02 15:13 +0200
              Re: microFORTH rickman <gnuarm@gmail.com> - 2017-05-02 11:44 -0400
                Re: microFORTH David Schultz <abuse@127.0.0.1> - 2017-05-04 16:54 -0500
      Re: microFORTH "HAA" <someone@microsoft.com> - 2017-05-02 10:36 +1000
        Re: microFORTH "Elizabeth D. Rather" <erather@forth.com> - 2017-05-01 15:20 -1000
          Re: microFORTH "HAA" <someone@microsoft.com> - 2017-05-02 13:01 +1000
            Re: microFORTH hughaguilar96@gmail.com - 2017-05-01 20:42 -0700
              Re: microFORTH hughaguilar96@gmail.com - 2017-05-01 21:27 -0700
                Re: microFORTH "HAA" <someone@microsoft.com> - 2017-05-02 17:05 +1000
                  Re: microFORTH "Elizabeth D. Rather" <erather@forth.com> - 2017-05-01 21:18 -1000
            Re: microFORTH "HAA" <someone@microsoft.com> - 2017-05-02 16:45 +1000
            Re: microFORTH JUERGEN <epldfpga@aol.com> - 2017-05-02 00:08 -0700
            Re: microFORTH hughaguilar96@gmail.com - 2017-05-02 11:36 -0700
              Re: microFORTH "HAA" <someone@microsoft.com> - 2017-05-03 10:43 +1000
                Re: microFORTH hughaguilar96@gmail.com - 2017-05-02 19:45 -0700
                Re: microFORTH Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-03 04:41 -0500
                Re: microFORTH David Schultz <abuse@127.0.0.1> - 2017-05-04 17:03 -0500
                  Re: microFORTH "Elizabeth D. Rather" <erather@forth.com> - 2017-05-04 12:58 -1000
                  Re: microFORTH "HAA" <someone@microsoft.com> - 2017-05-05 12:57 +1000
          Re: microFORTH David Schultz <abuse@127.0.0.1> - 2017-05-04 16:57 -0500
      Re: microFORTH Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-02 04:11 -0500
        Re: microFORTH Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-05-02 04:16 -0500
        Re: microFORTH Howerd <howerdo@yahoo.co.uk> - 2017-05-02 05:25 -0700
          Re: microFORTH "Elizabeth D. Rather" <erather@forth.com> - 2017-05-02 10:07 -1000
        Re: microFORTH David Schultz <abuse@127.0.0.1> - 2017-05-04 17:15 -0500

Page 1 of 2  [1] 2  Next page →


#58072 — microFORTH

FromJUERGEN <epldfpga@aol.com>
Date2017-04-25 01:15 -0700
SubjectmicroFORTH
Message-ID<2d438ef9-36ec-42b6-b98f-792dcc3798db@googlegroups.com>
microFORTH documentation is available on the FORTH, INC. website. Not a new product - but many here will probably remember it. And might have a look after many years ...

+++++++++++++++++++++++++++++++++++++++++++++++++
Forth has been around a long time. It would be a mistake to look at any of these early systems and think they represent today’s standards-based, commercial-grade Forth products. However, there is much to learn from the work of others and Forth’s history is studded with some stunning examples of both systems and applications.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


https://www.forth.com/resources/archive-forth-systems-software/

[toc] | [next] | [standalone]


#58161

From"HAA" <someone@microsoft.com>
Date2017-04-26 09:35 +1000
Message-ID<odomhc$1fp3$1@gioia.aioe.org>
In reply to#58072
JUERGEN wrote:
> microFORTH documentation is available on the FORTH, INC. website. Not a new product -
> but many here will probably remember it. And might have a look after many years ...
>
> +++++++++++++++++++++++++++++++++++++++++++++++++
> Forth has been around a long time. It would be a mistake to look at any of these early
> systems and think they represent today's standards-based, commercial-grade Forth
> products. However, there is much to learn from the work of others and Forth's history
> is studded with some stunning examples of both systems and applications.
> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
>
> https://www.forth.com/resources/archive-forth-systems-software/

Thanks for that.

I never knew Fig-Forth was *that* close to microFORTH.  I had assumed
0 VARIABLE <BUILDS  END  etc were a Fig-Forth invention.


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


#58165

From"Elizabeth D. Rather" <erather@forth.com>
Date2017-04-25 14:15 -1000
Message-ID<8PidneLnT8Uxe2LFnZ2dnUU7-V3NnZ2d@supernews.com>
In reply to#58161
On 4/25/17 1:35 PM, HAA wrote:
> JUERGEN wrote:
>> microFORTH documentation is available on the FORTH, INC. website. Not a new product -
>> but many here will probably remember it. And might have a look after many years ...
>>
>> +++++++++++++++++++++++++++++++++++++++++++++++++
>> Forth has been around a long time. It would be a mistake to look at any of these early
>> systems and think they represent today's standards-based, commercial-grade Forth
>> products. However, there is much to learn from the work of others and Forth's history
>> is studded with some stunning examples of both systems and applications.
>> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>
>>
>> https://www.forth.com/resources/archive-forth-systems-software/
>
> Thanks for that.
>
> I never knew Fig-Forth was *that* close to microFORTH.  I had assumed
> 0 VARIABLE <BUILDS  END  etc were a Fig-Forth invention.

According to Don Colburn, writing in the History of Programming Languages
paper http://www.forth.com/resources/forth-programming-language/ the first
figForth was written by Maj. Robert Selzer, who had used microFORTH for an
AMI 6800 development system on an Army project and was privately developing
a standalone editor/assembler/linker package for the 6502. Selzer wrote a
6502 Forth assembler, and used the Army’s microFORTH metacompiler to target
compile the first 6502 stand-alone Forth for the Jolt single board computer.
He completed the project with Bill Ragsdale, who used it in his business
and then published it for FIG.

Cheers,
Elizabeth

-- 
Elizabeth D. Rather
FORTH, Inc.
6080 Center Drive, Suite 600
Los Angeles, CA  90045
USA

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


#58171

Fromlehs <skydda.barnen@gmail.com>
Date2017-04-25 23:09 -0700
Message-ID<79f8718a-9306-4c78-a4f7-a5e211bb9964@googlegroups.com>
In reply to#58165
Interesting indeed! I had heard that Bill Ragsdale somehow had come 
in contact with Forth, but not how. 

The ideas behind Forth bubbled up at that time: stacks, RPN, interactive
And structured programming, micro processors etc. The puzzle had begun 
added, but Charles Moore seems to be the predestinated inventor. 
And thanks for that! His concept is outstanding.

As the ancient compiler concept, translating from traditional formulas to 
machine code, is the seed to the dominating computer science, the 
canonical simplicity is the good soil for an eventual future.

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


#58427

From"HAA" <someone@microsoft.com>
Date2017-05-01 11:15 +1000
Message-ID<oe62bf$qns$1@gioia.aioe.org>
In reply to#58165
Elizabeth D. Rather wrote:
> On 4/25/17 1:35 PM, HAA wrote:
> > JUERGEN wrote:
> >> microFORTH documentation is available on the FORTH, INC. website. Not a new product -
> >> but many here will probably remember it. And might have a look after many years ...
> >>
> >> +++++++++++++++++++++++++++++++++++++++++++++++++
> >> Forth has been around a long time. It would be a mistake to look at any of these
> >> early systems and think they represent today's standards-based, commercial-grade
> >> Forth products. However, there is much to learn from the work of others and Forth's
> >> history is studded with some stunning examples of both systems and applications.
> >> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> >>
> >>
> >> https://www.forth.com/resources/archive-forth-systems-software/
> >
> > Thanks for that.
> >
> > I never knew Fig-Forth was *that* close to microFORTH.  I had assumed
> > 0 VARIABLE <BUILDS  END  etc were a Fig-Forth invention.
>
> According to Don Colburn, writing in the History of Programming Languages
> paper http://www.forth.com/resources/forth-programming-language/ the first
> figForth was written by Maj. Robert Selzer, who had used microFORTH for an
> AMI 6800 development system on an Army project and was privately developing
> a standalone editor/assembler/linker package for the 6502. Selzer wrote a
> 6502 Forth assembler, and used the Army’s microFORTH metacompiler to target
> compile the first 6502 stand-alone Forth for the Jolt single board computer.
> He completed the project with Bill Ragsdale, who used it in his business
> and then published it for FIG.
>
> Cheers,
> Elizabeth

A closer look at microFORTH reveals it was also quite different from Forth
we know today.  There was no AGAIN or REPEAT.  UNTIL was called END.
Backslash '\' was COMPILE.  WHILE worked like REPEAT but resolved a
preceding IF/ELSE.  FILL had no resemblance to today's word.

In comparison Fig-Forth, which came out not long after, looks relatively
modern.  So while Fig-Forth's origin may have been microFORTH, its
influences appear to have extended well beyond.


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


#58419

FromDavid Schultz <abuse@127.0.0.1>
Date2017-04-30 15:02 -0500
Message-ID<a_WdnQAWBNxR35vEnZ2dnUU7-WXNnZ2d@earthlink.com>
In reply to#58072
On 04/25/2017 03:15 AM, JUERGEN wrote:
> microFORTH documentation is available on the FORTH, INC. website. Not
> a new product - but many here will probably remember it. And might
> have a look after many years ...
> 

I don't know how useful it is, unless you want examples of bugs.

It starts off with the definition of LOAD:

: LOAD BLK C@ <R IN @ <R 0 IN ! 8* OFFSET @ + F9F DROP
    BLK ! INTERPRET R> IN ! R> BLK C! ;

The value in BLK is saved and restored using C@ and C! yet it has to
have a larger range than that and the new value is set using !.

Plus most of the code is missing.


-- 
David W. Schultz
http://home.earthlink.net/~david.schultz
"Life without stock is barely worth living..." - Anthony Bourdain

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


#58425

Fromrickman <gnuarm@gmail.com>
Date2017-04-30 21:13 -0400
Message-ID<oe61u1$j53$2@dont-email.me>
In reply to#58419
On 4/30/2017 4:02 PM, David Schultz wrote:
> On 04/25/2017 03:15 AM, JUERGEN wrote:
>> microFORTH documentation is available on the FORTH, INC. website. Not
>> a new product - but many here will probably remember it. And might
>> have a look after many years ...
>>
>
> I don't know how useful it is, unless you want examples of bugs.
>
> It starts off with the definition of LOAD:
>
> : LOAD BLK C@ <R IN @ <R 0 IN ! 8* OFFSET @ + F9F DROP
>     BLK ! INTERPRET R> IN ! R> BLK C! ;
>
> The value in BLK is saved and restored using C@ and C! yet it has to
> have a larger range than that and the new value is set using !.
>
> Plus most of the code is missing.

What is <R ?  I can't find that word in win32forth.

-- 

Rick C

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


#58428

FromDavid Schultz <abuse@127.0.0.1>
Date2017-04-30 20:24 -0500
Message-ID<yISdnSPzhNKrE5vEnZ2dnUU7-S-dnZ2d@earthlink.com>
In reply to#58425
On 04/30/2017 08:13 PM, rickman wrote:
> What is <R ?  I can't find that word in win32forth.
> 

>R

-- 
David W. Schultz
http://home.earthlink.net/~david.schultz
"Life without stock is barely worth living..." - Anthony Bourdain

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


#58459

Fromrickman <gnuarm@gmail.com>
Date2017-05-01 21:02 -0400
Message-ID<oe8llm$n9s$1@dont-email.me>
In reply to#58428
On 4/30/2017 9:24 PM, David Schultz wrote:
> On 04/30/2017 08:13 PM, rickman wrote:
>> What is <R ?  I can't find that word in win32forth.
>>
>
> R

see R
     ^
Error(-13): R is undefined

-- 

Rick C

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


#58482

FromRod Pemberton <NeedNotReplyHere@xrsevnneqk.cem>
Date2017-05-02 05:58 -0400
Message-ID<20170502055817.65556ef7@_>
In reply to#58459
On Mon, 1 May 2017 21:02:44 -0400
rickman <gnuarm@gmail.com> wrote:

> On 4/30/2017 9:24 PM, David Schultz wrote:
> > On 04/30/2017 08:13 PM, rickman wrote:

> >> What is <R ?  I can't find that word in win32forth.
> >>  
> >
> > R  
> 
> see R
>      ^
> Error(-13): R is undefined
> 

If you were joking, I didn't find that funny at all.
If you were serious, it's time to get a real newsreader.


Rod Pemberton
-- 
"Well, many people are really f---ing stupid too.  Should we just adopt
all their standards?" - George Carlin

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


#58491

FromCoos Haak <htrofhc@gmail.com>
Date2017-05-02 15:13 +0200
Message-ID<1eibgn576yzbd.1gvbu4cp1ffv9$.dlg@40tude.net>
In reply to#58459
Op Mon, 1 May 2017 21:02:44 -0400 schreef rickman:

> On 4/30/2017 9:24 PM, David Schultz wrote:
>> On 04/30/2017 08:13 PM, rickman wrote:
>>> What is <R ?  I can't find that word in win32forth.
>>>
>>
>> R
> 
> see R
>      ^
> Error(-13): R is undefined

<R is a very old version of >R
R is an old version of R@

groet Coos

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


#58506

Fromrickman <gnuarm@gmail.com>
Date2017-05-02 11:44 -0400
Message-ID<oea9a7$4gj$1@dont-email.me>
In reply to#58491
On 5/2/2017 9:13 AM, Coos Haak wrote:
> Op Mon, 1 May 2017 21:02:44 -0400 schreef rickman:
>
>> On 4/30/2017 9:24 PM, David Schultz wrote:
>>> On 04/30/2017 08:13 PM, rickman wrote:
>>>> What is <R ?  I can't find that word in win32forth.
>>>>
>>>
>>> R
>>
>> see R
>>      ^
>> Error(-13): R is undefined
>
> <R is a very old version of >R
> R is an old version of R@

Thanks.  Seems David typed >R at the beginning of a line which my 
newsreader saw as a quoted line.  There are many issues when trying to 
communicate with Forth code in the message.  It can really mess up 
punctuation and vice versa.

-- 

Rick C

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


#58683

FromDavid Schultz <abuse@127.0.0.1>
Date2017-05-04 16:54 -0500
Message-ID<ZPSdnfR447mJPpbEnZ2dnUU7-T3NnZ2d@earthlink.com>
In reply to#58506
On 05/02/2017 10:44 AM, rickman wrote:
> Thanks.  Seems David typed >R at the beginning of a line which my
> newsreader saw as a quoted line.  There are many issues when trying to
> communicate with Forth code in the message.  It can really mess up
> punctuation and vice versa.
> 

Sorry about that. I forget that these modern newreaders do things to
format code for presentation.

I like being able to copy things to folders in Thunderbird but I kind of
miss trn.

I also apologize for the late response. Earthlink foobared their Usenet
access on Monday (outsourced to GigaNews) and restored it today.

-- 
David W. Schultz
http://home.earthlink.net/~david.schultz
"Life without stock is barely worth living..." - Anthony Bourdain

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


#58458

From"HAA" <someone@microsoft.com>
Date2017-05-02 10:36 +1000
Message-ID<oe8kb5$uam$1@gioia.aioe.org>
In reply to#58419
David Schultz wrote:
> On 04/25/2017 03:15 AM, JUERGEN wrote:
> > microFORTH documentation is available on the FORTH, INC. website. Not
> > a new product - but many here will probably remember it. And might
> > have a look after many years ...
> >
>
> I don't know how useful it is, unless you want examples of bugs.
>
> It starts off with the definition of LOAD:
>
> : LOAD BLK C@ <R IN @ <R 0 IN ! 8* OFFSET @ + F9F DROP
>     BLK ! INTERPRET R> IN ! R> BLK C! ;
>
> The value in BLK is saved and restored using C@ and C! yet it has to
> have a larger range than that and the new value is set using !.
>
> Plus most of the code is missing.

It seems a little too obvious to be a bug - besides which it would only
limit the range of screens on which the word LOAD could appear.
I would reserve judgement until I saw the entire code.  I assume the
distribution disk contained a boot image representing the forth kernel
which then loads screen 3.




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


#58460

From"Elizabeth D. Rather" <erather@forth.com>
Date2017-05-01 15:20 -1000
Message-ID<qcmdncwmT_l6Q5rEnZ2dnUU7-I_NnZ2d@supernews.com>
In reply to#58458
On 5/1/17 2:36 PM, HAA wrote:
> David Schultz wrote:
>> On 04/25/2017 03:15 AM, JUERGEN wrote:
>>> microFORTH documentation is available on the FORTH, INC. website. Not
>>> a new product - but many here will probably remember it. And might
>>> have a look after many years ...
>>>
>>
>> I don't know how useful it is, unless you want examples of bugs.
>>
>> It starts off with the definition of LOAD:
>>
>> : LOAD BLK C@ <R IN @ <R 0 IN ! 8* OFFSET @ + F9F DROP
>>     BLK ! INTERPRET R> IN ! R> BLK C! ;
>>
>> The value in BLK is saved and restored using C@ and C! yet it has to
>> have a larger range than that and the new value is set using !.

Actually, this is for the 1802, which had a development system using 
250K floppies! This is 1978, folks. And BLK is a user variable, so it 
had to be 16 bits. That ! is pretty tacky, but it wouldn't cause a 
failure. Obviously the "endianness" worked ok.

>> Plus most of the code is missing.

Um, no, actually, this is all of it, including the assembler, compiler, 
text editor, source printing utility, metacompiler, and code for the 
kernel. We wrote a bunch of completed applications with it.

> It seems a little too obvious to be a bug - besides which it would only
> limit the range of screens on which the word LOAD could appear.
> I would reserve judgement until I saw the entire code.  I assume the
> distribution disk contained a boot image representing the forth kernel
> which then loads screen 3.

Yes, that's correct. The bootstrap was in 0 and the precompiled kernel 
is in 1 and 2.

Cheers,
Elizabeth

-- 
Elizabeth D. Rather
FORTH, Inc.
6080 Center Drive, Suite 600
Los Angeles, CA  90045
USA

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


#58464

From"HAA" <someone@microsoft.com>
Date2017-05-02 13:01 +1000
Message-ID<oe8sr5$182s$1@gioia.aioe.org>
In reply to#58460
Elizabeth D. Rather wrote:
> On 5/1/17 2:36 PM, HAA wrote:
> > David Schultz wrote:
> >> On 04/25/2017 03:15 AM, JUERGEN wrote:
> >>> microFORTH documentation is available on the FORTH, INC. website. Not
> >>> a new product - but many here will probably remember it. And might
> >>> have a look after many years ...
> >>>
> >>
> >> I don't know how useful it is, unless you want examples of bugs.
> >>
> >> It starts off with the definition of LOAD:
> >>
> >> : LOAD BLK C@ <R IN @ <R 0 IN ! 8* OFFSET @ + F9F DROP
> >>     BLK ! INTERPRET R> IN ! R> BLK C! ;
> >>
> >> The value in BLK is saved and restored using C@ and C! yet it has to
> >> have a larger range than that and the new value is set using !.
>
> Actually, this is for the 1802, which had a development system using
> 250K floppies! This is 1978, folks. And BLK is a user variable, so it
> had to be 16 bits. That ! is pretty tacky, but it wouldn't cause a
> failure. Obviously the "endianness" worked ok.

'blocks' were 128 bytes.  While any screen on the disk could be LOADed
thanks to ! , the C@ C! would limit use of the word "LOAD" to screens 1-31
by my calculation.  Not a big deal for floppy size storage.

>
> >> Plus most of the code is missing.
>
> Um, no, actually, this is all of it, including the assembler, compiler,
> text editor, source printing utility, metacompiler, and code for the
> kernel. We wrote a bunch of completed applications with it.

There does appear to be some source that's missing - INTERPRET,
WORD, BLOCK etc and parts of the run-time e.g. WHILE.

>
> > It seems a little too obvious to be a bug - besides which it would only
> > limit the range of screens on which the word LOAD could appear.
> > I would reserve judgement until I saw the entire code.  I assume the
> > distribution disk contained a boot image representing the forth kernel
> > which then loads screen 3.
>
> Yes, that's correct. The bootstrap was in 0 and the precompiled kernel
> is in 1 and 2.
>
> Cheers,
> Elizabeth

Perhaps someone who still has disks can dump the image.  I notice there's
been a revival of interest in 1802 Forths e.g. CamelForth and others.
http://www.retrotechnology.com/memship/figforth_1802.html






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


#58466

Fromhughaguilar96@gmail.com
Date2017-05-01 20:42 -0700
Message-ID<70c60dc0-59d5-4bad-846f-8347bd0e353a@googlegroups.com>
In reply to#58464
On Monday, May 1, 2017 at 8:02:00 PM UTC-7, HAA wrote:
> Elizabeth D. Rather wrote:
> > On 5/1/17 2:36 PM, HAA wrote:
> > > David Schultz wrote:
> > >> On 04/25/2017 03:15 AM, JUERGEN wrote:
> > >>> microFORTH documentation is available on the FORTH, INC. website. Not
> > >>> a new product - but many here will probably remember it. And might
> > >>> have a look after many years ...
> > >>>
> > >>
> > >> I don't know how useful it is, unless you want examples of bugs.
> > >>
> > >> It starts off with the definition of LOAD:
> > >>
> > >> : LOAD BLK C@ <R IN @ <R 0 IN ! 8* OFFSET @ + F9F DROP
> > >>     BLK ! INTERPRET R> IN ! R> BLK C! ;
> > >>
> > >> The value in BLK is saved and restored using C@ and C! yet it has to
> > >> have a larger range than that and the new value is set using !.
> >
> > Actually, this is for the 1802, which had a development system using
> > 250K floppies! This is 1978, folks. And BLK is a user variable, so it
> > had to be 16 bits. That ! is pretty tacky, but it wouldn't cause a
> > failure. Obviously the "endianness" worked ok.
> 
> 'blocks' were 128 bytes.  While any screen on the disk could be LOADed
> thanks to ! , the C@ C! would limit use of the word "LOAD" to screens 1-31
> by my calculation.  Not a big deal for floppy size storage.

It was a bug --- using C@ C! sometimes and @ ! other times --- that is definitely a bug!

It is irrelevant if this happened to work because the range was small and the machine was little-endian -- it is never a good idea to try to explain away a bug as a feature --- it is best to just admit that it is a bug.

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


#58467

Fromhughaguilar96@gmail.com
Date2017-05-01 21:27 -0700
Message-ID<5b96ac48-2fe8-4ca6-8efa-f38b1228f6a9@googlegroups.com>
In reply to#58466
On Monday, May 1, 2017 at 8:42:34 PM UTC-7, hughag...@gmail.com wrote:
> On Monday, May 1, 2017 at 8:02:00 PM UTC-7, HAA wrote:
> > Elizabeth D. Rather wrote:
> > > On 5/1/17 2:36 PM, HAA wrote:
> > > > David Schultz wrote:
> > > >> On 04/25/2017 03:15 AM, JUERGEN wrote:
> > > >>> microFORTH documentation is available on the FORTH, INC. website. Not
> > > >>> a new product - but many here will probably remember it. And might
> > > >>> have a look after many years ...
> > > >>>
> > > >>
> > > >> I don't know how useful it is, unless you want examples of bugs.
> > > >>
> > > >> It starts off with the definition of LOAD:
> > > >>
> > > >> : LOAD BLK C@ <R IN @ <R 0 IN ! 8* OFFSET @ + F9F DROP
> > > >>     BLK ! INTERPRET R> IN ! R> BLK C! ;
> > > >>
> > > >> The value in BLK is saved and restored using C@ and C! yet it has to
> > > >> have a larger range than that and the new value is set using !.
> > >
> > > Actually, this is for the 1802, which had a development system using
> > > 250K floppies! This is 1978, folks. And BLK is a user variable, so it
> > > had to be 16 bits. That ! is pretty tacky, but it wouldn't cause a
> > > failure. Obviously the "endianness" worked ok.
> > 
> > 'blocks' were 128 bytes.  While any screen on the disk could be LOADed
> > thanks to ! , the C@ C! would limit use of the word "LOAD" to screens 1-31
> > by my calculation.  Not a big deal for floppy size storage.
> 
> It was a bug --- using C@ C! sometimes and @ ! other times --- that is definitely a bug!
> 
> It is irrelevant if this happened to work because the range was small and the machine was little-endian -- it is never a good idea to try to explain away a bug as a feature --- it is best to just admit that it is a bug.

Note that I'm not criticizing Charles Moore for having a bug in his MicroForth --- bugs happen, and I'm sure he would have fixed it right away if he had noticed it --- he presumably did fix it in PolyForth, which was the next Forth system that he wrote.

I'm saying that claiming that a bug isn't a bug is a bad idea --- this is why all Forth Inc. software after 1982 was bug-ridden --- nobody wanted to fix bugs, but instead they claimed that they didn't have bugs, and Elizabeth Rather was okay with that.

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


#58470

From"HAA" <someone@microsoft.com>
Date2017-05-02 17:05 +1000
Message-ID<oe9b4l$1org$1@gioia.aioe.org>
In reply to#58467
hughaguilar96@gmail.com wrote:
> ...
> Note that I'm not criticizing Charles Moore for having a bug in his MicroForth --- bugs
> happen, and I'm sure he would have fixed it right away if he had noticed it --- he
> presumably did fix it in PolyForth, which was the next Forth system that he wrote.

It turns out it was 'a feature not a bug'.  A confusing one all the same and perhaps
more trouble than worth.  I recall PolyForth using the same (user?) variable for two
mutually exclusive purposes.  That at least was clean and simple.


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


#58473

From"Elizabeth D. Rather" <erather@forth.com>
Date2017-05-01 21:18 -1000
Message-ID<ftudnQiFZ6NKr5XEnZ2dnUU7-f3NnZ2d@supernews.com>
In reply to#58470
On 5/1/17 9:05 PM, HAA wrote:
> hughaguilar96@gmail.com wrote:
>> ...
>> Note that I'm not criticizing Charles Moore for having a bug in his MicroForth --- bugs
>> happen, and I'm sure he would have fixed it right away if he had noticed it --- he
>> presumably did fix it in PolyForth, which was the next Forth system that he wrote.
>
> It turns out it was 'a feature not a bug'.  A confusing one all the same and perhaps
> more trouble than worth.  I recall PolyForth using the same (user?) variable for two
> mutually exclusive purposes.  That at least was clean and simple.

microForth was mostly written by Dean Sanderson. polyFORTH was a team 
effort, including Chuck, Dean, Greg Bailey, and a few others.

Cheers,
Elizabeth

-- 
Elizabeth D. Rather
FORTH, Inc.
6080 Center Drive, Suite 600
Los Angeles, CA  90045
USA

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


Page 1 of 2  [1] 2  Next page →

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


csiph-web