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


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

Rosetta Code: Catamorphism

Started by"WJ" <w_a_x_man@yahoo.com>
First post2016-08-24 15:27 +0000
Last post2016-08-29 16:04 +0000
Articles 20 on this page of 75 — 19 participants

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


Contents

  Rosetta Code: Catamorphism "WJ" <w_a_x_man@yahoo.com> - 2016-08-24 15:27 +0000
    Rosetta Code: Catamorphism Julian Fondren <julian.fondren@gmail.com> - 2016-08-24 12:43 -0700
      Re: Rosetta Code: Catamorphism anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-08-25 09:53 +0000
        Re: Rosetta Code: Catamorphism Julian Fondren <julian.fondren@gmail.com> - 2016-08-25 06:41 -0700
          Re: Rosetta Code: Catamorphism Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-08-25 16:06 -0500
            Re: Rosetta Code: Catamorphism foxaudioresearch@gmail.com - 2016-08-25 20:40 -0700
              Rosetta Code ( was Re: Rosetta Code: Catamorphism) "HAA" <someone@microsoft.com> - 2016-08-29 12:06 +1000
                Re: Rosetta Code ( was Re: Rosetta Code: Catamorphism) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-08-29 01:41 -0500
          Re: Rosetta Code: Catamorphism anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-08-27 10:01 +0000
            Re: Rosetta Code: Catamorphism hughaguilar96@gmail.com - 2016-08-29 01:21 -0700
              Re: Rosetta Code: Catamorphism hughaguilar96@gmail.com - 2016-08-29 01:36 -0700
                Re: Rosetta Code: Catamorphism Julian Fondren <ayrnieu@gmail.com> - 2016-08-29 07:23 -0700
                  Re: Rosetta Code: Catamorphism anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-08-29 16:58 +0000
                    Re: Rosetta Code: Catamorphism peter.m.falth@gmail.com - 2016-08-29 13:15 -0700
                      Re: Rosetta Code: Catamorphism anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-08-29 20:53 +0000
                        Re: Rosetta Code: Catamorphism peter.m.falth@gmail.com - 2016-08-30 04:47 -0700
                          Re: Rosetta Code: Catamorphism anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-09-05 07:13 +0000
                      Re: Rosetta Code: Catamorphism "HAA" <someone@microsoft.com> - 2016-08-30 11:54 +1000
                  Re: Rosetta Code: Catamorphism "HAA" <someone@microsoft.com> - 2016-08-31 12:34 +1000
              Re: Rosetta Code: Catamorphism "HAA" <someone@microsoft.com> - 2016-08-29 18:44 +1000
                Re: Rosetta Code: Catamorphism hughaguilar96@gmail.com - 2016-09-01 23:47 -0700
                  Re: Rosetta Code: Catamorphism Coos Haak <htrofhc@gmail.com> - 2016-09-02 12:42 +0200
                    Re: Rosetta Code: Catamorphism anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-09-02 11:45 +0000
                      Re: Rosetta Code: Catamorphism Coos Haak <htrofhc@gmail.com> - 2016-09-02 15:01 +0200
                        Re: Rosetta Code: Catamorphism anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-09-02 16:04 +0000
                      Re: Rosetta Code: Catamorphism albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-09-02 16:23 +0200
              Re: Rosetta Code: Catamorphism Bruce Axtens <bruce.axtens@gmail.com> - 2016-08-29 18:29 +0800
                Re: Rosetta Code: Catamorphism Ron Aaron <rambamist@gmail.com> - 2016-08-29 13:41 +0300
                  Re: Rosetta Code: Catamorphism Bruce Axtens <bruce.axtens@gmail.com> - 2016-08-31 09:24 +0800
                    Standard or Forth? "HAA" <someone@microsoft.com> - 2016-09-01 13:45 +1000
                      Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-02 21:54 -0700
                        Re: Standard or Forth? Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-09-04 07:35 +0100
                          Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-04 00:41 -0700
                            Re: Standard or Forth? Julian Fondren <julian.fondren@gmail.com> - 2016-09-04 02:55 -0700
                            Re: Standard or Forth? Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-09-04 13:26 +0100
                              Re: Standard or Forth? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-09-04 13:59 +0000
                              Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-04 23:09 -0700
                                Re: Standard or Forth? Ron Aaron <rambamist@gmail.com> - 2016-09-05 09:55 +0300
                                Re: Standard or Forth? Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-09-05 08:39 +0100
                          Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-04 01:25 -0700
                            Re: Standard or Forth? Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-09-04 14:13 +0100
                              Re: Standard or Forth? Coos Haak <htrofhc@gmail.com> - 2016-09-04 23:16 +0200
                              Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-04 22:33 -0700
                                Re: Standard or Forth? Ron Aaron <rambamist@gmail.com> - 2016-09-05 09:03 +0300
                                  Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-06 23:23 -0700
                                    Re: Standard or Forth? Ron Aaron <rambamist@gmail.com> - 2016-09-07 10:14 +0300
                                      Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-07 01:01 -0700
                                        Re: Standard or Forth? Ron Aaron <rambamist@gmail.com> - 2016-09-07 11:18 +0300
                                        Re: Standard or Forth? Cecil Bayona <cbayona@cbayona.com> - 2016-09-07 08:47 -0500
                                Re: Standard or Forth? Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-09-05 09:20 +0100
                                  Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-05 02:21 -0700
                              Re: Standard or Forth? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-09-05 08:10 +0000
                                Re: Standard or Forth? Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-09-05 10:51 +0100
                      Re: Standard or Forth? "Elizabeth D. Rather" <erather@forth.com> - 2016-09-03 08:05 +0200
                        Re: Standard or Forth? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-09-03 03:00 -0500
                        Re: Standard or Forth? "HAA" <someone@microsoft.com> - 2016-09-03 22:48 +1000
                          Re: Standard or Forth? Alex <alex@rivadpm.com> - 2016-09-03 15:05 +0100
                          Re: Standard or Forth? Julian Fondren <julian.fondren@gmail.com> - 2016-09-03 07:46 -0700
                          Re: Standard or Forth? "Elizabeth D. Rather" <erather@forth.com> - 2016-09-03 23:53 +0200
                          Re: Standard or Forth? stephen@mpeforth.com (Stephen Pelc) - 2016-09-03 22:37 +0000
                            Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-03 21:17 -0700
                            Re: Standard or Forth? "HAA" <someone@microsoft.com> - 2016-09-05 02:35 +1000
                              Re: Standard or Forth? albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-09-05 03:18 +0200
                                Re: Standard or Forth? "HAA" <someone@microsoft.com> - 2016-09-08 22:04 +1000
                                  Re: Standard or Forth? Paul Rubin <no.email@nospam.invalid> - 2016-09-08 12:41 -0700
                                    Re: Standard or Forth? "HAA" <someone@microsoft.com> - 2016-09-09 12:51 +1000
                                      Re: Standard or Forth? Paul Rubin <no.email@nospam.invalid> - 2016-09-08 21:50 -0700
                                        Re: Standard or Forth? "HAA" <someone@microsoft.com> - 2016-09-12 17:16 +1000
                                          Re: Standard or Forth? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-09-12 16:59 +0000
                                            Re: Standard or Forth? "HAA" <someone@microsoft.com> - 2016-09-15 13:38 +1000
                                    Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-08 23:33 -0700
                              Re: Standard or Forth? Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-09-05 08:41 +0100
                                Re: Standard or Forth? hughaguilar96@gmail.com - 2016-09-05 01:42 -0700
            Re: Rosetta Code: Catamorphism albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-08-29 16:03 +0200
              Re: Rosetta Code: Catamorphism anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-08-29 16:04 +0000

Page 3 of 4 — ← Prev page 1 2 [3] 4  Next page →


#50655 — Re: Standard or Forth?

FromGerry Jackson <gerry@jackson9000.fsnet.co.uk>
Date2016-09-04 14:13 +0100
SubjectRe: Standard or Forth?
Message-ID<nqh6kt$t1l$1@dont-email.me>
In reply to#50652
On 04/09/2016 09:25, hughaguilar96@gmail.com wrote:
> On Saturday, September 3, 2016 at 11:35:44 PM UTC-7, Gerry wrote:
>> On 03/09/2016 05:54, hughaguilar96@gmail.com wrote:
>>> This is what Charles Moore was referring to when he said:
>>> "Any spirit of innovation has been thoroughly squelched."
>>> At the time that Straight Forth is released, when the
>>> ANS-Forth cult is striving mightily to squelch it, I will
>>> have difficulty in fixing any mistakes that made it into
>>> the design, because doing so will involve admitting that
>>> I was wrong about something --- it is best if I wait until
>>> I'm absolutely sure that there are no mistakes --- I
>>> should really write one or two non-trivial programs in
>>> Straight Forth before I even consider releasing it publicly.
>>
>> Very wise, nothing kills an interest in software than finding it is
>> bug-ridden. However this requires more than just a couple of non-trivial
>> programs to be written before release, it requires a comprehensive set
>> of test programs which test, not only the basic features but corner
>> cases, and include them with the system. This is also true for
>> applications and libraries. Few people seem to do this even though it is
>> in the developers' interest to do so.
>
> I wasn't really worried about bugs.

Well you ought to be.

> I generally write pretty bug-free code. I was more interested in design issues. For example, there is my OOP package:
> https://groups.google.com/forum/#!topic/comp.lang.forth/cH-pGXhBCfE
> This is bug-free.

All programmers think that about their own software until actual users 
prove them wrong.

> I read Bernd Paysan's page discussing Mini-OOF:
> https://bernd-paysan.de/mini-oof.html
>
> He says: "Gerry Jackson wrote a larger example, LexGen. This example extends Mini-OOF slightly, but it shows that with these small changes, Mini-OOF can be used for real-world applications."
>
> Why did you write your LexGen using Mini-OOF???

Because it's small and elegant, providing much power with very little code.

> It is obvious that Mini-OOF is typical Paysan code! This is his METHOD definer:
>
> : method ( m v -- m' v ) Create  over , swap cell+ swap
>    DOES> ( ... o -- ... ) @ over @ + @ execute ;
>
> That is horribly inefficient! Any code that uses CREATE DOES> is going to be inefficient.

So what. It's a bit slower, but if that isn't an issue it's a waste of 
time to worry about optimisation. I use a desktop PC that provides 
plenty of power so a few microseconds difference in execution time isn't 
a problem. Anyway that tool was developed about 10 years ago and you 
weren't around to educate me :)

> My method calls are about 10 times more efficient under SwiftForth (SwiftForth is particularly inefficient with CREATE DOES> words) and about 3 times more efficient under VFX.

If the code EXECUTE'd at the end of the DOES> part swamps the overhead 
of reaching the EXECUTE, efficiency of the DOES> is irrelevant.

>
> So, why did you use Mini-OOF when it is obviously no good?

Slightly slower execution time doesn't make it bad per se. It's good for 
what I've used it for.

>  I think that you did this because Mini-OOF was written by Bernd Paysan 
who is a Forth-200x committee member --- you are being loyal to 
Forth-200x --- you don't care about efficiency at all, but you are 
treating Forth as a toy language suitable only for science-fair projects.

Your thinking is totally wrong. Why insult me? You might think that and 
I can't stop you and no argument from me will convince you otherwise.


-- 
Gerry

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


#50663 — Re: Standard or Forth?

FromCoos Haak <htrofhc@gmail.com>
Date2016-09-04 23:16 +0200
SubjectRe: Standard or Forth?
Message-ID<1af0w0fxcmom9.1vce1nlzlwrun.dlg@40tude.net>
In reply to#50655
Op Sun, 4 Sep 2016 14:13:05 +0100 schreef Gerry Jackson:

> On 04/09/2016 09:25, hughaguilar96@gmail.com wrote:

<snip>
>>  I think that you did this because Mini-OOF was written by Bernd Paysan 
>> who is a Forth-200x committee member --- you are being loyal to 
>> Forth-200x --- you don't care about efficiency at all, but you are 
>> treating Forth as a toy language suitable only for science-fair projects.
>> 
> Your thinking is totally wrong. Why insult me? You might think that and 
> I can't stop you and no argument from me will convince you otherwise.

See? That is what I call childish behavior: Insulting each and
everyone who has a tiny bit of critique of his utterings.

groet Coos

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


#50676 — Re: Standard or Forth?

Fromhughaguilar96@gmail.com
Date2016-09-04 22:33 -0700
SubjectRe: Standard or Forth?
Message-ID<5ed73e4b-e5f2-4f9d-b7a4-f7923e71aa65@googlegroups.com>
In reply to#50655
On Sunday, September 4, 2016 at 6:13:02 AM UTC-7, Gerry wrote:
> On 04/09/2016 09:25, hughaguilar96@gmail.com wrote:
> > I wasn't really worried about bugs.
> 
> Well you ought to be.
> 
> > I generally write pretty bug-free code. I was more interested in design issues. For example, there is my OOP package:
> > https://groups.google.com/forum/#!topic/comp.lang.forth/cH-pGXhBCfE
> > This is bug-free.
> 
> All programmers think that about their own software until actual users 
> prove them wrong.

Show me any bug in that code.

> If the code EXECUTE'd at the end of the DOES> part swamps the overhead 
> of reaching the EXECUTE, efficiency of the DOES> is irrelevant.

The reason why CREATE DOES> is slow is that constant data that was comma'd after the CREATE has to be fetched out of memory to be used. For example, consider Stephen Pelc's FIELD from his book: "Programming Forth."

: field \ offset n -- offset+n ; addr -- addr+offset
\ When defining a structure, a field of size n starts
\ at the given offset, returning the next offset. At
\ run time, the offset is added to the base address.
 create
 over , + \ lay offset and update
 does>
 @ + \ addr offset to address
;

This is grossly inefficient code! I would never put such horrible code in the novice-package! This is a disgrace to the Forth programming language --- showing novice Forth programmers such bad code will either turn them into bad Forth programmers (if they don't have any prior programming experience) or will turn them off on Forth (if they do have prior programming experience).

His code has to @ from memory at run-time to obtain the offset. This offset is a constant value that is known at compile-time --- it should be compiled as a literal (this is what I do in my FIELD in the novice-package).

Stephen Pelc's code is very slow! He is accessing memory unnecessarily. Also, he is accessing memory from the data that is after the CREATE which is by itself out there, meaning that it will have to be loaded into the data-cache. This results in data-cache thrashing which is the #2 cause of slow software on modern computers. 

You say that you don't need to worry about speed because you have a modern computer. Your computer has only a 32KB cache however --- this has been true for several years, and will continue to be true for several more years --- cache thrashing is going to cause an unreasonable slow-down.

Another serious problem with Pelc's code is that he is not aligning his fields! This is horrible! Accessing unaligned data is the #1 cause of slow software on modern computers. This was actually the #1 cause of slow software on ancient computers too --- everything from the 8086 onward --- it wasn't a problem on 8-bit data-bus computers such as the 6502 and 8088 though.

Code such as Stephen Pelc presented in his book is the reason why Forth has a reputation for being a toy language.

This is my FIELD from the novice-package:

: <field> ( offset -- )                 \ run-time: struct-adr -- field-adr     \ stream: name
    ?dup if  >r
        :  state@,  if,     r@ lit,  postpone lit+,
                    else,   r@ lit+,                    then,  ;,
        immediate
        rdrop
    else
        :  ;,  immediate                \ the first field does nothing whatsoever
    then ;

: field ( offset size -- new-offset )           \ stream: name
    aligned  swap aligned  tuck         \ -- offset size offset
    <field>                             \ -- offset size
    + ;                                 \ -- new-offset

Stephen Pelc actually has a version of FIELD that is comparable to mine in efficiency. He teaches the readers of his book the grossly inefficient version though --- he ruins their minds with this horrible code --- what is the point of that?

> > So, why did you use Mini-OOF when it is obviously no good?
> 
> Slightly slower execution time doesn't make it bad per se. It's good for 
> what I've used it for.
> 
> >  I think that you did this because Mini-OOF was written by Bernd Paysan 
> who is a Forth-200x committee member --- you are being loyal to 
> Forth-200x --- you don't care about efficiency at all, but you are 
> treating Forth as a toy language suitable only for science-fair projects.
> 
> Your thinking is totally wrong. Why insult me? You might think that and 
> I can't stop you and no argument from me will convince you otherwise.

My thinking is not "totally wrong" --- I said that you use the code from the Forth-200x committee members because you are being loyal to the Forth-200x committee --- this is the truth.

Everybody seems to be totally focused on being loyal to the Forth-200x committee. They will use horribly inefficient and badly-designed code because it has been approved by the committee, and will turn a blind eye to efficient well-designed code that has not been approved by the committee. Nobody is actually writing Forth programs --- everybody believes that being a Forth programmer consists entirely of being on the Forth-200x mailing-list and participating in setting the Standard for the Forth community --- everybody involved in Forth-200x imagines that common Forth programmers such as myself are breathlessly waiting for them to provide us with their wisdom.

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


#50677 — Re: Standard or Forth?

FromRon Aaron <rambamist@gmail.com>
Date2016-09-05 09:03 +0300
SubjectRe: Standard or Forth?
Message-ID<nqj1s8$dp4$1@dont-email.me>
In reply to#50676

On 09/05/2016 08:33, hughaguilar96@gmail.com wrote:

> This is grossly inefficient code! I would never put such horrible code in the novice-package! This is a disgrace to the Forth programming language --- showing novice Forth programmers such bad code will either turn them into bad Forth programmers (if they don't have any prior programming experience) or will turn them off on Forth (if they do have prior programming experience).

Gross!  Inefficient!  Oh, the humanity!

Did you *measure* performance?  That's the only thing that matters,
ultimately: does the user find the performance adequate or not.

> You say that you don't need to worry about speed because you have a modern computer. Your computer has only a 32KB cache however --- this has been true for several years, and will continue to be true for several more years --- cache thrashing is going to cause an unreasonable slow-down.

Total BS, as usual, Hugh.

My desktop computer (which is several years old) has an L1 cache of 128K
(only four times as big as you stated); an L2 cache of 1M and an L3 of
6M.  It has three caches, the smallest of which is four times bigger
than  the "only" cache you claim his computer has.

Just to bring you up to date: almost every computer sold in the past
many years has several caches, since the CPU speeds are much faster than
the RAM speeds.  Even the ancient laptop I use for serving mail has an
L1 of 128K and an L2 of 256K.

You might consider reading up on the subject before opening your gob.

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


#50723 — Re: Standard or Forth?

Fromhughaguilar96@gmail.com
Date2016-09-06 23:23 -0700
SubjectRe: Standard or Forth?
Message-ID<4947b470-875c-4d7a-ab2a-e8d350ef145d@googlegroups.com>
In reply to#50677
On Sunday, September 4, 2016 at 11:03:54 PM UTC-7, Ron Aaron wrote:
> On 09/05/2016 08:33, hughaguilar96@gmail.com wrote:
> > You say that you don't need to worry about speed because you have a modern computer. Your computer has only a 32KB cache however --- this has been true for several years, and will continue to be true for several more years --- cache thrashing is going to cause an unreasonable slow-down.
> 
> Total BS, as usual, Hugh.
> 
> My desktop computer (which is several years old) has an L1 cache of 128K
> (only four times as big as you stated); an L2 cache of 1M and an L3 of
> 6M.  It has three caches, the smallest of which is four times bigger
> than  the "only" cache you claim his computer has.
> 
> Just to bring you up to date: almost every computer sold in the past
> many years has several caches, since the CPU speeds are much faster than
> the RAM speeds.  Even the ancient laptop I use for serving mail has an
> L1 of 128K and an L2 of 256K.
> 
> You might consider reading up on the subject before opening your gob.

This is just a big steaming pile of "choseness" a.k.a. bullshit.

The L1 data-cache and L1 code-cache are each 32KB (64-byte cache-line) --- this has been true since 2003 and will likely continue to be true for many more years.

You are the same lying pig who claimed that Israel is not using white-phosphorous on civilian targets and that the Palestinian burn-victims are faking their injuries --- you Israelis are no different from the Nazis --- I have no respect for you whatsoever!

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


#50725 — Re: Standard or Forth?

FromRon Aaron <rambamist@gmail.com>
Date2016-09-07 10:14 +0300
SubjectRe: Standard or Forth?
Message-ID<nqoep4$npf$1@dont-email.me>
In reply to#50723

On 07/09/2016 09:23, hughaguilar96@gmail.com wrote:
> On Sunday, September 4, 2016 at 11:03:54 PM UTC-7, Ron Aaron wrote:
>> On 09/05/2016 08:33, hughaguilar96@gmail.com wrote:
>>> You say that you don't need to worry about speed because you have a modern computer. Your computer has only a 32KB cache however --- this has been true for several years, and will continue to be true for several more years --- cache thrashing is going to cause an unreasonable slow-down.
>>
>> Total BS, as usual, Hugh.
>>
>> My desktop computer (which is several years old) has an L1 cache of 128K
>> (only four times as big as you stated); an L2 cache of 1M and an L3 of
>> 6M.  It has three caches, the smallest of which is four times bigger
>> than  the "only" cache you claim his computer has.
>>
>> Just to bring you up to date: almost every computer sold in the past
>> many years has several caches, since the CPU speeds are much faster than
>> the RAM speeds.  Even the ancient laptop I use for serving mail has an
>> L1 of 128K and an L2 of 256K.
>>
>> You might consider reading up on the subject before opening your gob.
> 
> This is just a big steaming pile of "choseness" a.k.a. bullshit.

You really are a complete dickhead, you know?  But to the point:

> The L1 data-cache and L1 code-cache are each 32KB (64-byte cache-line) --- this has been true since 2003 and will likely continue to be true for many more years.

Stick it up your ass, pendejo:

http://www.cpu-world.com/CPUs/K8/AMD-Turion%2064%20X2%20Mobile%20technology%20TL-60%20-%20TMDTL60HAX5DM.html

That's my desktop processor, it has 128K of L1.  Do some research and
learn, you ridiculous twat.

And L1 isn't the only cache...


> You are the same lying pig who claimed that Israel is not using white-phosphorous on civilian targets and that the Palestinian burn-victims are faking their injuries --- you Israelis are no different from the Nazis --- I have no respect for you whatsoever!

Ok, Ramon Raton.  Info-in, drivel-out is your MO.

So: when can the world expect the premier of "Straight Forth"? I'm
getting goosebumps in anticipation.

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


#50726 — Re: Standard or Forth?

Fromhughaguilar96@gmail.com
Date2016-09-07 01:01 -0700
SubjectRe: Standard or Forth?
Message-ID<efafd0ce-e7c7-4ffa-aa0d-b43769ccc8ba@googlegroups.com>
In reply to#50725
On Wednesday, September 7, 2016 at 12:14:46 AM UTC-7, Ron Aaron wrote:
> Stick it up your ass, pendejo:

You're being racist against me because I have a Spanish surname --- you dipshit; I don't even speak Spanish --- your effort to push my buttons didn't work because I don't care about ethnicity.

I'm not racist --- I am well aware that there is no significant difference between the races from a genetic standpoint --- I am not prejudiced against people based on race, and I don't use racist epitaphs.

I am prejudiced against juggalos, jews, homosexuals and drug fiends --- this isn't genetics --- it was your *choice* to live a life of depravity.

Also, the Israeli's use of white-phosphorous against civilian targets is a violation of the Geneva Convention --- and it was grossly offensive of you personally to lie about this and say that the Palestinian burn victims were faking their injuries --- you're a typical lying jew-pig.

Also, the L1 code-cache and L1 data-cache are 32KB each --- who do you think you are fooling? --- this is a programming forum; everybody here is familiar with the x86.

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


#50727 — Re: Standard or Forth?

FromRon Aaron <rambamist@gmail.com>
Date2016-09-07 11:18 +0300
SubjectRe: Standard or Forth?
Message-ID<nqoigl$2uu$1@dont-email.me>
In reply to#50726

On 07/09/2016 11:01, hughaguilar96@gmail.com wrote:

> You're being racist against me because I have a Spanish surname --- you dipshit; I don't even speak Spanish --- your effort to push my buttons didn't work because I don't care about ethnicity.

I'm not being racist against you.  I happen to be a Spanish speaker
(among other things), and "pendejo" just fits you like a glove.  But
push your buttons?  That's not a difficult task...


> I'm not racist...
> I am prejudiced against juggalos, jews, homosexuals and drug fiends --- this isn't genetics --- it was your *choice* to live a life of depravity.

I've no idea what a 'juggalo' is.  Is it like a "gigolo"?  In which case
it's something you likely picked up on a street-corner somewhere.
Probably along with the syphilis which has clearly eaten away at your brain.

I'll confess to being a Jew, so I do fit at least one of the categories
of people you are prejudiced against.  Good for you, mouth-breather.  At
least you're honest enough to say you're against "Jews" and not
"Israelis".  Good for you, you anti-Semitic prick.


> Also, the Israeli's use of white-phosphorous against civilian targets is a violation of the Geneva Convention --- and it was grossly offensive of you personally to lie about this and say that the Palestinian burn victims were faking their injuries --- you're a typical lying jew-pig.

<sigh>  Since you refuse to follow links to factual statements (which I
have posted in the past), suffice it to say you're full of feces (as
usual).  The Israeli army did not and does not use WP as a munition
against civilian targets.  It does use WP (as does every other army) for
smoke-screens.  That's a fact, it's documented, and I posted the docs in
the past.

The picture of "civilians burned by WP" was a fake, and documented as
such, you troglodytic imbecile.

So no, I did not "lie about this".  You, in your extraordinary ignorance
and bigotry, continue to post lies and misinformation.  So be it.

> Also, the L1 code-cache and L1 data-cache are 32KB each --- who do you think you are fooling? --- this is a programming forum; everybody here is familiar with the x86.

Were you to follow the link I posted, you would see that you are
factually incorrect.  But hey, you don't like to let facts stand in your
way, do you, sunshine?

So when *is* Straight Farce making it's debut?

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


#50733 — Re: Standard or Forth?

FromCecil Bayona <cbayona@cbayona.com>
Date2016-09-07 08:47 -0500
SubjectRe: Standard or Forth?
Message-ID<nqp5pt$34t$1@dont-email.me>
In reply to#50726
On 9/7/2016 3:01 AM, hughaguilar96@gmail.com wrote:
> Also, the L1 code-cache and L1 data-cache are 32KB each --- who do you think you are fooling? --- this is a programming forum; everybody here is familiar with the x86.

My Medium age machines from 2012 uses the I7-960, and I7-950 CPUs, they 
have 4x32K 4 way cache for code, 4x32K 8 way cache for data, 1MB 4 way 
L2 cache, and 8MB 16 way L3 cache. Yes they are organized as 32K chunks 
for management but the L1 cache for code on that CPU is 128K a small 
Forth can fit in it's entirety inside the code cache.

Another set of machine use the I7-2600 chip and it is similar to the 
I7-960 except the cache is more finely divided.

This machine I'm on right now uses an I7-930 from 2010 and the cache is 
just like the I7-960

All these machines use 32K cache buffers for data organization, but 
there are multiple of them for a total of 128K of L1 cache for code, the 
data cache has a similar arrangement.

All these I7-9xx machines are quite old but they use 3 memory channels 
with matched memory (24 GB) so they are quite fast and I have not seen 
the need to update them. They can run Windows 10, Linux, or OS X quite 
well, and since I don't have a lot of money available it's fortuitous 
that they do not need to be upgraded.

You guys need to take it down several notches, as this conversation if 
it can be called that has spiraled way out control.


-- 
Cecil - k5nwa

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


#50685 — Re: Standard or Forth?

FromGerry Jackson <gerry@jackson9000.fsnet.co.uk>
Date2016-09-05 09:20 +0100
SubjectRe: Standard or Forth?
Message-ID<nqj9ri$3vu$1@dont-email.me>
In reply to#50676
On 05/09/2016 06:33, hughaguilar96@gmail.com wrote:
> On Sunday, September 4, 2016 at 6:13:02 AM UTC-7, Gerry wrote:
>> On 04/09/2016 09:25, hughaguilar96@gmail.com wrote:
>>> I wasn't really worried about bugs.
>>
>> Well you ought to be.
>>
>>> I generally write pretty bug-free code. I was more interested in design issues. For example, there is my OOP package:
>>> https://groups.google.com/forum/#!topic/comp.lang.forth/cH-pGXhBCfE
>>> This is bug-free.
>>
>> All programmers think that about their own software until actual users
>> prove them wrong.
>
> Show me any bug in that code.

There's a vast difference between a short bit of code like that and a 
complete application. Even your string stack package had a few bugs that 
I reported to you?

Could you post the final version of your OOP? In the link you posted 
there are different versions with updates and corrections in other 
threads that make it time consuming to sort out.

>
>> If the code EXECUTE'd at the end of the DOES> part swamps the overhead
>> of reaching the EXECUTE, efficiency of the DOES> is irrelevant.
>
> The reason why CREATE DOES> is slow is that constant data that was comma'd after the CREATE has to be fetched out of memory to be used. For example, consider Stephen Pelc's FIELD from his book: "Programming Forth."
>
> : field \ offset n -- offset+n ; addr -- addr+offset
> \ When defining a structure, a field of size n starts
> \ at the given offset, returning the next offset. At
> \ run time, the offset is added to the base address.
>   create
>   over , + \ lay offset and update
>   does>
>   @ + \ addr offset to address
> ;
>
> This is grossly inefficient code! I would never put such horrible code in the novice-package!

That's as may be - you haven't addressed my point. Neither do your 
following paragraphs that I've snipped.

>>> So, why did you use Mini-OOF when it is obviously no good?
>>
>> Slightly slower execution time doesn't make it bad per se. It's good for
>> what I've used it for.
>>
>>>   I think that you did this because Mini-OOF was written by Bernd Paysan
>> who is a Forth-200x committee member --- you are being loyal to
>> Forth-200x --- you don't care about efficiency at all, but you are
>> treating Forth as a toy language suitable only for science-fair projects.
>>
>> Your thinking is totally wrong. Why insult me? You might think that and
>> I can't stop you and no argument from me will convince you otherwise.
>
> My thinking is not "totally wrong" --- I said that you use the code from the Forth-200x committee members because you are being loyal to the Forth-200x committee --- this is the truth.

No, you're mistaken - I should know, you can only speculate. I used 
mini-oof on its merits. The fact it was written by a committee member is 
incidental. Who knows I might even use your OOP in the future for a new 
application - your repeated rudeness wouldn't put me off. But I'm 
certainly not going to re-write an existing complex tool to use your OOP 
because I know wouldn't give me any significant performance improvement. 
I'm not even to going to try it as an experiment - if it ain't broke 
don't fix it (and it certainly ain't broke).

>
> Everybody seems to be totally focused on being loyal to the Forth-200x committee.They will use horribly inefficient and badly-designed code because it 
has been approved by the committee, and will turn a blind eye to 
efficient well-designed code that has not been approved by the 
committee. Nobody is actually writing Forth programs --- everybody 
believes that being a Forth programmer consists entirely of being on the 
Forth-200x mailing-list and participating in setting the Standard for 
the Forth community --- everybody involved in Forth-200x imagines that 
common Forth programmers such as myself are breathlessly waiting for 
them to provide us with their wisdom.
>

Sorry Hugh but I have to say that is absolute nonsense.


-- 
Gerry

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


#50691 — Re: Standard or Forth?

Fromhughaguilar96@gmail.com
Date2016-09-05 02:21 -0700
SubjectRe: Standard or Forth?
Message-ID<e602f7d9-2c7c-4428-8835-618d170418e8@googlegroups.com>
In reply to#50685
On Monday, September 5, 2016 at 1:20:04 AM UTC-7, Gerry wrote:
> On 05/09/2016 06:33, hughaguilar96@gmail.com wrote:
> > On Sunday, September 4, 2016 at 6:13:02 AM UTC-7, Gerry wrote:
> >> On 04/09/2016 09:25, hughaguilar96@gmail.com wrote:
> >>> I wasn't really worried about bugs.
> >>
> >> Well you ought to be.
> >>
> >>> I generally write pretty bug-free code. I was more interested in design issues. For example, there is my OOP package:
> >>> https://groups.google.com/forum/#!topic/comp.lang.forth/cH-pGXhBCfE
> >>> This is bug-free.
> >>
> >> All programmers think that about their own software until actual users
> >> prove them wrong.
> >
> > Show me any bug in that code.
> 
> There's a vast difference between a short bit of code like that and a 
> complete application. Even your string stack package had a few bugs that 
> I reported to you?
> 
> Could you post the final version of your OOP? In the link you posted 
> there are different versions with updates and corrections in other 
> threads that make it time consuming to sort out.

The August 19 post of mine had the final version.
https://groups.google.com/forum/#!topic/comp.lang.forth/cH-pGXhBCfE

I can email a new novice-package to you, if you like, which will have the OOP package in it. I also intend to post the novice package on GIT or on Mark's website pretty soon, so it can be downloaded.

The OOP package is tentative. I haven't written any programs to use it, so I don't know if it is useful. I'm still thinking about writing that book Cecil suggested, and it would be based on this OOP package, but I would need to have an example program for the book which I haven't thought up yet. I'm still interested in Ido parsing, so maybe I will delve into that.

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


#50690 — Re: Standard or Forth?

Fromanton@mips.complang.tuwien.ac.at (Anton Ertl)
Date2016-09-05 08:10 +0000
SubjectRe: Standard or Forth?
Message-ID<2016Sep5.101032@mips.complang.tuwien.ac.at>
In reply to#50655
Gerry Jackson <gerry@jackson9000.fsnet.co.uk> writes:
>On 04/09/2016 09:25, hughaguilar96@gmail.com wrote:
>> Why did you write your LexGen using Mini-OOF???
>
>Because it's small and elegant, providing much power with very little code.
>
>> It is obvious that Mini-OOF is typical Paysan code! This is his METHOD definer:
>>
>> : method ( m v -- m' v ) Create  over , swap cell+ swap
>>    DOES> ( ... o -- ... ) @ over @ + @ execute ;
>>
>> That is horribly inefficient! Any code that uses CREATE DOES> is going to be inefficient.
>
>So what. It's a bit slower, but if that isn't an issue it's a waste of 
>time to worry about optimisation. I use a desktop PC that provides 
>plenty of power so a few microseconds difference in execution time isn't 
>a problem. Anyway that tool was developed about 10 years ago and you 
>weren't around to educate me :)
>
>> My method calls are about 10 times more efficient under SwiftForth (SwiftForth is particularly inefficient with CREATE DOES> words) and about 3 times more efficient under VFX.

Let's see how much speedup we get from eliminating the memory access
caused by CREATE DOES> in LexGen, when using VFX.  Here's the code:

0 [if]
synonym set-optimizer drop

: var  ( m v size "<spaces>name" -- m v' )
   create over , +
   does> @ +
;
[else]
synonym set-optimizer set-compiler

synonym var +field
[then]

: opt-method ( xt -- )
    >body @ postpone literal postpone over postpone @ postpone + postpone @ postpone execute ;
    
: method  ( m v "<spaces>name" -- m' v )
    create over , swap cell+ swap
    ['] opt-method set-optimizer
  does>
    @ over @ + @ execute
;

\ further down

: opt-class-var ( xt -- )
    >body @ postpone literal postpone + ;

: class-var  ( m v size "<spaces>name" -- m' v )
   aligned 2>r
   create dup ,
    r> + r>      ( -- m' v )
    ['] opt-class-var set-optimizer
   does>           ( class -- addr )
      @ +
;

\ Class method - accessed via the class name, equivalent to
\ static methods

: opt-class-method ( xt -- )
    >body @ postpone literal postpone over postpone + postpone @ postpone execute ;

: class-method  ( m v "<spaces>name" -- m' v )
    create
    over , >r cell+ r>
    ['] opt-class-method set-optimizer
   does>         ( class -- ? )
      @ over + @ execute
;

With the plain create-does> code, I get (9 runs, results in seconds
CPU time on a Core i7-6700K at 4GHz (no turbo)):

[1.884 1.892 1.916 1.920 1.920 1.920 1.924 1.924 1.928 ] lexex

With the optimized code, I get:

[1.896 1.896 1.900 1.900 1.904 1.908 1.908 1.908 1.908 ] lexex

A speedup by a whopping factor of 1.008 for the median result.

- anton
-- 
M. Anton Ertl  http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
     New standard: http://www.forth200x.org/forth200x.html
   EuroForth 2016: http://www.euroforth.org/ef16/

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


#50692 — Re: Standard or Forth?

FromGerry Jackson <gerry@jackson9000.fsnet.co.uk>
Date2016-09-05 10:51 +0100
SubjectRe: Standard or Forth?
Message-ID<nqjf6g$khj$1@dont-email.me>
In reply to#50690
On 05/09/2016 09:10, Anton Ertl wrote:
> Gerry Jackson <gerry@jackson9000.fsnet.co.uk> writes:
>> On 04/09/2016 09:25, hughaguilar96@gmail.com wrote:
>>> Why did you write your LexGen using Mini-OOF???
>>
>> Because it's small and elegant, providing much power with very little code.
>>
>>> It is obvious that Mini-OOF is typical Paysan code! This is his METHOD definer:
>>>
>>> : method ( m v -- m' v ) Create  over , swap cell+ swap
>>>     DOES> ( ... o -- ... ) @ over @ + @ execute ;
>>>
>>> That is horribly inefficient! Any code that uses CREATE DOES> is going to be inefficient.
>>
>> So what. It's a bit slower, but if that isn't an issue it's a waste of
>> time to worry about optimisation. I use a desktop PC that provides
>> plenty of power so a few microseconds difference in execution time isn't
>> a problem. Anyway that tool was developed about 10 years ago and you
>> weren't around to educate me :)
>>
>>> My method calls are about 10 times more efficient under SwiftForth (SwiftForth is particularly inefficient with CREATE DOES> words) and about 3 times more efficient under VFX.
>
> Let's see how much speedup we get from eliminating the memory access
> caused by CREATE DOES> in LexGen, when using VFX.  Here's the code:
>
> 0 [if]
> synonym set-optimizer drop
>
> : var  ( m v size "<spaces>name" -- m v' )
>     create over , +
>     does> @ +
> ;
> [else]
> synonym set-optimizer set-compiler
>
> synonym var +field
> [then]
>
> : opt-method ( xt -- )
>      >body @ postpone literal postpone over postpone @ postpone + postpone @ postpone execute ;
>
> : method  ( m v "<spaces>name" -- m' v )
>      create over , swap cell+ swap
>      ['] opt-method set-optimizer
>    does>
>      @ over @ + @ execute
> ;
>
> \ further down
>
> : opt-class-var ( xt -- )
>      >body @ postpone literal postpone + ;
>
> : class-var  ( m v size "<spaces>name" -- m' v )
>     aligned 2>r
>     create dup ,
>      r> + r>      ( -- m' v )
>      ['] opt-class-var set-optimizer
>     does>           ( class -- addr )
>        @ +
> ;
>
> \ Class method - accessed via the class name, equivalent to
> \ static methods
>
> : opt-class-method ( xt -- )
>      >body @ postpone literal postpone over postpone + postpone @ postpone execute ;
>
> : class-method  ( m v "<spaces>name" -- m' v )
>      create
>      over , >r cell+ r>
>      ['] opt-class-method set-optimizer
>     does>         ( class -- ? )
>        @ over + @ execute
> ;
>
> With the plain create-does> code, I get (9 runs, results in seconds
> CPU time on a Core i7-6700K at 4GHz (no turbo)):
>
> [1.884 1.892 1.916 1.920 1.920 1.920 1.924 1.924 1.928 ] lexex
>
> With the optimized code, I get:
>
> [1.896 1.896 1.900 1.900 1.904 1.908 1.908 1.908 1.908 ] lexex
>
> A speedup by a whopping factor of 1.008 for the median result.
>
> - anton
>

Many thanks.
  I was minded to try something similar and you've saved me the trouble.

Disclaimer for Hugh: despite appearances to the contrary, do not 
interpret the above as me being a lickspittle to a member of the Forth 
200X committee, I deny it. :)

-- 
Gerry

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


#50633 — Re: Standard or Forth?

From"Elizabeth D. Rather" <erather@forth.com>
Date2016-09-03 08:05 +0200
SubjectRe: Standard or Forth?
Message-ID<wZ-dnSSxJYyL9VfKnZ2dnUU78enNnZ2d@supernews.com>
In reply to#50589
On 9/1/16 5:45 AM, HAA wrote:
> Bruce Axtens wrote:
>> On 29/08/2016 6:41 PM, Ron Aaron wrote:
>>>
>>>
>>> On 08/29/2016 13:29, Bruce Axtens wrote:
>>>
>>>> When is Straight Forth due?
>>>
>>> Probably right after Get Bent Forth is released...
>>>
>> The way Hugh goes on, you'd think ANS Forth was the bent one.
>
> As does Chuck: "I had reservations about ANSI. I worried that it would
> be a disaster and not merely a dubious advantage. All of my fears of
> the standard and none of the advantages of the standard have come
> to pass. Any spirit of innovation has been thoroughly quelched.
> Underground Forths are still needed."

A standard isn't for the purpose of innovation, it's for the purpose of 
stabilizing the results of past (and recent) innovation, to make it 
available for everyone seeking to write portable programs.

"Underground" Forths are useful as innovative platforms... successful 
innovations can subsequently be standardized.

Cheers,
Elizabeth

-- 
==================================================
Elizabeth D. Rather   (US & Canada)   800-55-FORTH
FORTH Inc.                         +1 310.999.6784
5959 West Century Blvd. Suite 700
Los Angeles, CA 90045
http://www.forth.com

"Forth-based products and Services for real-time
applications since 1973."
==================================================

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


#50635 — Re: Standard or Forth?

FromAndrew Haley <andrew29@littlepinkcloud.invalid>
Date2016-09-03 03:00 -0500
SubjectRe: Standard or Forth?
Message-ID<TeSdnWIpreWnHlfKnZ2dnUU7-fGdnZ2d@supernews.com>
In reply to#50633
Elizabeth D. Rather <erather@forth.com> wrote:
> 
> A standard isn't for the purpose of innovation, it's for the purpose of 
> stabilizing the results of past (and recent) innovation, to make it 
> available for everyone seeking to write portable programs.
> 
> "Underground" Forths are useful as innovative platforms... successful 
> innovations can subsequently be standardized.

Yes!  It's really important to say this, again and again.

Andrew.

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


#50636 — Re: Standard or Forth?

From"HAA" <someone@microsoft.com>
Date2016-09-03 22:48 +1000
SubjectRe: Standard or Forth?
Message-ID<nqegor$1dtb$1@gioia.aioe.org>
In reply to#50633
Elizabeth D. Rather wrote:
> ...
> A standard isn't for the purpose of innovation, it's for the purpose of
> stabilizing the results of past (and recent) innovation, to make it
> available for everyone seeking to write portable programs.

Except that 35 years on there are still no portable programs as
WJ makes clear.  Standards in Forth are wasted effort.  I'm not
saying there are *no* good ideas in them, but for the purpose
for which they were created they have been a failure.  Chuck
appears to have more faith in Forth *users* than Forth Standards.
So do I.


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


#50639 — Re: Standard or Forth?

FromAlex <alex@rivadpm.com>
Date2016-09-03 15:05 +0100
SubjectRe: Standard or Forth?
Message-ID<nqelbp$gv4$1@dont-email.me>
In reply to#50636
On 03/09/16 13:48, HAA wrote:
> Elizabeth D. Rather wrote:
>> ...
>> A standard isn't for the purpose of innovation, it's for the purpose of
>> stabilizing the results of past (and recent) innovation, to make it
>> available for everyone seeking to write portable programs.
>
> Except that 35 years on there are still no portable programs as
> WJ makes clear.  Standards in Forth are wasted effort.  I'm not
> saying there are *no* good ideas in them, but for the purpose
> for which they were created they have been a failure.  Chuck
> appears to have more faith in Forth *users* than Forth Standards.
> So do I.
>
>
>

The success or otherwise of a standard is not binary; for example C99 
and the revision C11

-- 
Alex

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


#50640 — Re: Standard or Forth?

FromJulian Fondren <julian.fondren@gmail.com>
Date2016-09-03 07:46 -0700
SubjectRe: Standard or Forth?
Message-ID<8dae6dc6-d0fe-4449-8c27-a2e3ebff935a@googlegroups.com>
In reply to#50636
On Saturday, September 3, 2016 at 7:47:27 AM UTC-5, HAA wrote:
> 
> Except that 35 years on there are still no portable programs as
> WJ makes clear.

DOUG HOFFMAN, this man's pessimism is your fault.  Why didn't you
reply to every single worthless non-program spewed out by WJ?
Couldn't you have at least replied to his last batch of "I challenge
you with Rosetta Code pages that already have Forth entries" posts?
Pretty much everything WJ posts is covered by FMS-SILib.f and a bignum
library.  Why didn't you show off more?  Look at this poor, crying
post here.  Every one of tomorrow's newspapers will carry HAA's post
above the fold.  Everyone will know that you are a monster.

> Standards in Forth are wasted effort.

The effect of standards is that when I see NOT , I don't know what it
means -- but that when I see INVERT , I *do* know what it means.

The effect of standards is that Forth, which when described to someone
who's never heard of Forth should be a language whose programs are
almost impossible to port, actually can be ported from system to
system and architecture to architecture.  It's still takes effort.
All movement takes effort.  It remains a verb and not the noun of
'no-effort automatic universal portability' promised to us by utopians
and Java evangelists, but it's something. 

The effect of standards and of even of the quality of standards that
we have, and their 'design by committee' is that we don't have the
Python 2/3 split or the Perl 5/6 split or trivial little things like
"Rich Hickey decided yesterday that laziness was a cool thing and
implemented it; fix all of your code" don't happen.

There's nothing desirable about these things.  Python3 isn't
innovative; Python2 was just poorly designed.  Perl6 is such a failure
of a successor that its staunchest advocates are the first to tell you
that it's a completely different language and that Perl5 will stick
around just like other completely different languages will.  I
instantly realized that I preferred Common Lisp and its awful
*standard* and its terrible lack of *innovation*, but other people
fixed their Clojure code; they would still not appreciate continued
breaking changes.

If an effect of standards is that it slightly discourages innovation
like Chuck's IF ( f -- f ) or his OR (actually XOR), good.
Innovations like that deserve discouragement.  You can still use
them if you want.

Incidentally, I didn't prefer Common Lisp only because it has a
standard.  If so I would have to prefer C to Perl, and I don't.
Common Lisp has a good standard; it's a good language.  That it also
doesn't break your code or include stupid language-memes like lazy
evaluation, these are additional weights to be placed on the scale.

Forth also has, with ANS Forth, a good standard, both in the words it
defines and the way they're defined even in its concepts.

Forth has also seen actually bad standards - a nice contrast.

There are complaints that can be made about ANS Forth.  You could also
complain about the human face by pointing out that with three nostrils
humans could inhale much faster.  And golly, if Americans had flippers
then we could far better achieve our obvious by-design singular
purpose of clapping, and if FIND were slightly different then ANS
Forth could far better achieve its obvious by-design singular purpose
of letting Hugh write a cross compiler without any environmental
dependencies.

And you, HAA, exposed to a litany of idiotic complaints about your own
face, would no doubt come to agree with them if your mother didn't
whisper counter-arguments in your ear *every* *single* *time* a
complaint were raised.  "No honey, with three nostrils you'd have
trouble breathing in cold weather."  "But mother, hasn't WJ already
made it clear that I desperately need plastic surgery?  Why can't I
cut meat with my claws?!"  Even if she'd told you last week that you
were beautiful, after a week of complaints you would forget, and if
not reminded would start wearing a bag over your head.  You would
refuse to cut your steak with a knife, agreeing that knives are a
'crutch' and a 'wart' in your design.


-- Julian

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


#50643 — Re: Standard or Forth?

From"Elizabeth D. Rather" <erather@forth.com>
Date2016-09-03 23:53 +0200
SubjectRe: Standard or Forth?
Message-ID<44Sdncfg_LD221bKnZ2dnUU78bvNnZ2d@supernews.com>
In reply to#50636
On 9/3/16 2:48 PM, HAA wrote:
> Elizabeth D. Rather wrote:
>> ...
>> A standard isn't for the purpose of innovation, it's for the purpose of
>> stabilizing the results of past (and recent) innovation, to make it
>> available for everyone seeking to write portable programs.
>
> Except that 35 years on there are still no portable programs as
> WJ makes clear.  Standards in Forth are wasted effort.  I'm not
> saying there are *no* good ideas in them, but for the purpose
> for which they were created they have been a failure.  Chuck
> appears to have more faith in Forth *users* than Forth Standards.
> So do I.

In fact, there is quite a lot of code that is easily portable, often 
without effort and the rest of the time by adding a simple pre-amble 
covering platform-specific issues. Moreover, as a company who frequently 
needs to hire Forth programmers (as do our customers), the programmers 
themselves have a more coherent and consistent experience of the 
language than was possible in the "wild and woolly" days before ANS 
Forth. That *is*, actually, the purpose for which all language standards 
are created. I know, for example, numerous C programmers who have to be 
expert in using several C compilers because C programs are rarely 
portable without some effort, but the situation is far better because 
there are standards.

Cheers,
Elizabeth

-- 
==================================================
Elizabeth D. Rather   (US & Canada)   800-55-FORTH
FORTH Inc.                         +1 310.999.6784
5959 West Century Blvd. Suite 700
Los Angeles, CA 90045
http://www.forth.com

"Forth-based products and Services for real-time
applications since 1973."
==================================================

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


#50644 — Re: Standard or Forth?

Fromstephen@mpeforth.com (Stephen Pelc)
Date2016-09-03 22:37 +0000
SubjectRe: Standard or Forth?
Message-ID<57cb5023.1577548706@news.eternal-september.org>
In reply to#50636
On Sat, 3 Sep 2016 22:48:06 +1000, "HAA" <someone@microsoft.com>
wrote:

>Except that 35 years on there are still no portable programs as
>WJ makes clear.

Absolute rubbish. Since the ANS standard was adopted, MPE's ability
to use other people's Forth source code has improved markedly.
We speak from experience, not from hand-waving.

Stephen

-- 
Stephen Pelc, stephenXXX@mpeforth.com
MicroProcessor Engineering Ltd - More Real, Less Time
133 Hill Lane, Southampton SO15 5AF, England
tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
web: http://www.mpeforth.com - free VFX Forth downloads

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


Page 3 of 4 — ← Prev page 1 2 [3] 4  Next page →

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


csiph-web