Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

bug in VFX

2,014 views
Skip to first unread message

Hugh Aguilar

unread,
Jan 18, 2023, 10:34:13 PM1/18/23
to
I posted this already:
https://groups.google.com/g/comp.lang.forth/c/Fmr2UH5FeoE
I had a typo in the header though and said: "Bugs in SwiftForth."
Stephen Pelc's excuse for not responding is most likely that
he didn't think the thread had anything to do with VFX.

The bug is that this ANS-Forth compliant code causes VFX to crash:
------------------------------------------
: lit, ( val -- ) \ runtime: -- val
postpone literal ;
------------------------------------------
POSTPONE LITERAL works, but calling LIT, does not work.
NN pointed out that this bug can be worked-around by putting an
ALIGN in front of the POSTPONE LITERAL in the LIT, definition.
The ALIGN is not needed in front of a POSTPONE LITERAL that is
in the hand-written macro itself.

I think that Stephen Pelc purposely introduced this bug into VFX
to break my novice-package. I'm the only person who uses LIT,
etc. --- everybody else just says POSTPONE LITERAL etc. when
hand-writing macros.

I don't actually need to hand-write macros anymore because I now
have an early-binding MACRO: definer that (unlike Anton Ertl's macro)
supports literal numbers as well as immediate words such as
[CHAR] C" S" POSTPONE etc. that remove data from the input stream.

I think Stephen Pelc introduced this bug into VFX to break my
novice-package, because he knew that I would be blamed when the
novice-package fails. Even if he fixes this bug in VFX, he will then just
introduce another more subtle bug into VFX to break something
else in the novice-package. I might not notice this sabotage without
doing a complete test of the entire novice-package every time that
a new VFX version is released. He has to be careful though, because
he might accidentally break somebody else's legacy VFX code and
that person will blame him because the legacy program never changed
and suddenly it stops working when recompiled with the new VFX version.

So, if your legacy VFX programs fail under the new VFX version,
you are most likely collateral damage in Stephen Pelc's effort to
prove that I'm an incompetent Forth programmer. Be careful to stay
on Stephen Pelc's good side, or he will purposely break your legacy
programs and not tell you how to work around the VFX bug.

Jurgen Pitaske

unread,
Jan 19, 2023, 1:51:57 AM1/19/23
to
It might be a valid question to find out who uses this
novice-package
I wonder.

ALL NOVICE PACKAGE USERS please comment.

Jurgen Pitaske

unread,
Jan 19, 2023, 2:20:09 AM1/19/23
to
and according to the other thread mentioned,
we might be talking about a non-problem anyway:

> Can I suggest the following change :
> : lit, ( val -- ) \ runtime: -- val
> align postpone literal ;
>
> Does this fix the problem Hugh ?

That seems to fix the problem.
This explains why MAYBE sometimes works and sometimes doesn't.
The code in LIT, is sometimes aligned and sometimes not. although
that is weird too --- I would expect the code in the word created by MAYBE
to always be aligned on a paragraph boundary to reduce cache-thrashing.

I haven't actually taken the time to use SEE to look at the code generated, or
to look at the code in the compiler that generates this code.
It is not really my job to debug VFX for Stephen Pelc.

Jach Feng

unread,
Jan 19, 2023, 2:32:46 AM1/19/23
to
jpit...@gmail.com 在 2023年1月19日 星期四下午2:51:57 [UTC+8] 的信中寫道:
I had borrowed some codes ( include the Lit, :-) from Hugh's novice package to create a sturct data type in SwiftForth to interface the C library many years ago. I'm still using it today.

Jurgen Pitaske

unread,
Jan 19, 2023, 12:42:00 PM1/19/23
to
So, are your products/ designs / projects now stopped
as MPE has brought out an improved version of VFX.

I assume you could use the old VFX version anyway?

And as you state you use it with Swiftforth it does not matter anyway.

Hugh Aguilar

unread,
Jan 28, 2023, 5:29:32 PM1/28/23
to
Any use of VFX is stopped now because Stephen Pelc can't be trusted to maintain
ANS-Forth compatibility. He purposely introduces a bug in LIT, to break my
novice package, but he risks breaking other people's ANS-Forth code too.

As I said above, Stephen Pelc has been caught introducing this LIT, bug, so he may fix it,
but then introduce a more subtle bug to break my novice package that I wouldn't
catch immediately --- of course, the risk for him is that he breaks somebody else's code too.

On Friday, January 13, 2023 at 2:58:53 AM UTC-7, Kerr-Mudd, John wrote:
> On Thu, 12 Jan 2023 20:21:21 -0800 (PST)
> Hugh Aguilar <hughag...@gmail.com> wrote:
> > I still think that Stephen Pelc introduced the bug for the purpose of
> > breaking my novice package. Stephen Pelc hates me because I wrote
> []
> And it took that long.

I wrote an MSP-430 assembler. It is documented here:
https://board.flatassembler.net/topic.php?t=21841
Most likely, Stephen Pelc became aware of this, and he felt that I was intruding
upon his claimed territory (he sells an MSP-430 development system),
so that is why he introduced the LIT, bug to break my novice-package and stop
me from continuing with MSP-430 work --- he wants any user of my MSP-430
assembler to find that it crashes, and of course to blame me for this on the
assumption that I don't test my software before distributing it.

I don't necessarily download the latest and greatest version of VFX immediately
upon the its release. I'm not even aware of a new version being released because
I just continue using the version that I've got --- so I don't know that Stephen Pelc
has pulled the rug out from under my feet with his new version --- users of my
novice package may have the new version and not know that there is a new bug
that wasn't in the old version and which I wasn't aware of.

> --
> Bah, and indeed Humbug.

Kerr-Mudd, John --- your tagline effectively declares you to be a troll.
You never make any contribution to comp.lang.forth except to scoff at
other people's contributions, denouncing them as humbugs.

P.S. to Jach Feng --- if you want a new version of the novice package with the LIT,
bug fixed (using NN's suggested fix), drop me a line and I will send it to you.
Also, if you are doing anything with the MSP-430 I can send you my assembler too.
I'm also in the process of writing an STM8 assembler, but it is not finished.

Jurgen Pitaske

unread,
Jan 29, 2023, 2:49:00 AM1/29/23
to
Could you please stop attacking commercial Forth companies.
People are just laughing about your troll behaviour.
And as you can see, nobody else is interested anyway.
If there is an issue, people will probably discuss it with MPE directly,
as they can then get into details to find a solution quickly.

Hans Bezemer

unread,
Jan 29, 2023, 10:16:41 AM1/29/23
to
On Saturday, January 28, 2023 at 11:29:32 PM UTC+1, hughag...@gmail.com wrote:
> Any use of VFX is stopped now because Stephen Pelc can't be trusted to maintain
> ANS-Forth compatibility. He purposely introduces a bug in LIT, to break my
> novice package, but he risks breaking other people's ANS-Forth code too.
Ok - THINK! Because he can introduce bugs in other peoples code too, do you think this
is clever behavior for a vendor? Somebody whose livelihood literally DEPENDS on people
buying his product?

And if he WOULD BE, why not simply change compiler? If I would suspect myself sabotaging
my code, would the most logical behavior not be to stop using 4tH?

And again - there are plenty of very good Forth compilers. Even non-commercial ones, like
CIForth or Lina or iForth. These Dutchies may be walking around in cloggies and may have been
hit by a wing of a windmill once or twice while going outside, but they write some mean
compilers.

Hans Bezemer

Hugh Aguilar

unread,
Feb 3, 2023, 1:54:49 PM2/3/23
to
On Sunday, January 29, 2023 at 12:49:00 AM UTC-7, jpit...@gmail.com wrote:
> Could you please stop attacking commercial Forth companies.
> People are just laughing about your troll behaviour.
> And as you can see, nobody else is interested anyway.
> If there is an issue, people will probably discuss it with MPE directly,
> as they can then get into details to find a solution quickly.

What Juergen Pintaske is saying, is that when VFX users discover bugs
in VFX, they need to contact Stephen Pelc directly at MPE, rather than
post these bug reports on comp.lang.forth. If Stephen Pelc considers
these VFX users to be worthy, then he will provide them with a bug fix.
He will expect them to not post these VFX bug fixes on comp.lang.forth.

If Stephen Pelc does not consider you to be worthy, he will not provide you
with a bug fix, but he will leave you to struggle alone at debugging VFX to
get your VFX code running again. Good luck with that! It is difficult enough
to debug your own code, but much more difficult if the compiler has bugs too.

Why would Stephen Pelc consider you to be unworthy of getting a VFX bug fix?
One obvious reason, is that you are still using the evaluation version of VFX
and haven't yet paid him for the professional version.
Mostly though, I think that Stephen Pelc is opposed to anybody using VFX
to compete against MPE. He most likely knows that I wrote an MSP-430
assembler. He wants his customers to buy his MSP-430 cross-compiler ($$$),
and he doesn't want anybody to use my free MSP-430 assembler on VFX instead.

Another reason that Stephen Pelc may consider VFX users to be unworthy
of receiving VFX bug fixes, is that they are refusing to provide him with the
source-code for their VFX programs. He needs source-code!

I have noticed that there is a lot of interest on comp.lang.forth in disassembly
and/or decompiling of Forth programs. This is an example:
https://groups.google.com/g/comp.lang.forth/c/OJkqt9wwXc0
This is another example:
https://groups.google.com/g/comp.lang.forth/c/6unZAh_D0jA/m/zQNf_04FAAAJ
Obviously, the reason why the comp.lang.forth experts need to disassemble
and/or decompile Forth programs, is that they don't have the source-code.
Obviously, the reason that they don't have the source-code is that the programmer
who wrote the source-code doesn't want them to steal his intellectual property.

I don't provide source-code unless I have some reason to believe that the person will
make a positive contribution, rather than steal my code and claim that he wrote it.
I posted documentation for my MSP-430 assembler (HJA430) here:
https://board.flatassembler.net/topic.php?t=21841
I did not provide source-code. There is a guy on that forum called Revolution who
is very focused on obtaining source-code from real programmers. He wants me to
give him my source-code so that I can be an "early pioneer" in MSP-430 assembly.
This is so maintenance-programmers can take over the HJA430 project. They will say:
"Well, there was some guy who was an early pioneer in the HJA430 project, but his code
was just a crude prototype --- then real programmers (us!) took over to make it viable."
An example of this being done is the Menuet OS that got stolen. The pirates slapped
their own copyright notice on the source-code two weeks after downloading it.
They called it the Kolibri OS and completely excluded the original programmer.
Now they have a big website to show off their super-duper salesmanship skills:
https://kolibrios.org/en/

The problem with software is that, after it is written, it appears to be easy and obvious.
People look at the source-code and say:
"This is very straightforward non-clever programming. Anybody could have written this!"
Then they make some minor modifications and start saying that they wrote it all.
Maintenance programmers want to do 1% of the work and claim 100% of the credit.
Of course, the obvious example of this is my MFX that I wrote at Testra.
Testra now claims that they wrote this long before I showed up and that I had
nothing to do with it. Testra can't stop me from telling the truth though; saying
that I wrote MFX myself without any help. I never signed an NDA; they can't sue me.

Designing software requires brains. Debugging software requires effort.
Writing software is easy, but you have to have a good design before you start,
and you have to get your paper-tiger debugged after you write it to make it work.
Maintenance programmers contribute neither brains nor effort.
Maintenance programmers are carrion-eaters.
Testra has had a parade of MFX maintenance programmers after I left,
but all of them failed to understand MFX; none of them made a positive contribution.
Three decades later, Testra continues to use my MFX as I wrote it.
They had to upgrade UR/Forth to work on the modern Windows OS in order to
keep MFX going decade after decade --- still running on UR/Forth!

Hugh Aguilar

unread,
Feb 3, 2023, 6:37:30 PM2/3/23
to
On Thursday, January 19, 2023 at 12:20:09 AM UTC-7, jpit...@gmail.com wrote:
> On Thursday, 19 January 2023 at 06:51:57 UTC, Jurgen Pitaske wrote:
> > On Thursday, 19 January 2023 at 03:34:13 UTC, hughag...@gmail.com wrote:
> > > The bug is that this ANS-Forth compliant code causes VFX to crash:
> > > ------------------------------------------
> > > : lit, ( val -- ) \ runtime: -- val
> > > postpone literal ;
> > > ------------------------------------------
> > > POSTPONE LITERAL works, but calling LIT, does not work.
> > > NN pointed out that this bug can be worked-around by putting an
> > > ALIGN in front of the POSTPONE LITERAL in the LIT, definition.
> > > The ALIGN is not needed in front of a POSTPONE LITERAL that is
> > > in the hand-written macro itself.

> and according to the other thread mentioned,
> we might be talking about a non-problem anyway:
>
> > Can I suggest the following change :
> > : lit, ( val -- ) \ runtime: -- val
> > align postpone literal ;
> >
> > Does this fix the problem Hugh ?
>
> That seems to fix the problem.

I said that this *seems* to fix the problem.
It doesn't actually fix the problem in every case.
There are other circumstances in which the ALIGN doesn't help
and VFX still crashes. I have a lot words that use POSTPONE LITERAL
internally. I have tried hunting them all down and "fixing" them with
an ALIGN but some of them still cause VFX to crash.

On Sunday, January 29, 2023 at 12:49:00 AM UTC-7, jpit...@gmail.com wrote:
> And as you can see, nobody else is interested anyway.
> If there is an issue, people will probably discuss it with MPE directly,
> as they can then get into details to find a solution quickly.

So what is the solution???
You found the solution "quickly," so don't keep it to yourself. Tell us!
Inquiring minds want to know!

The problem with trying to fix bugs in VFX with hacky "fixes" such as
putting ALIGN in front of the POSTPONE LITERAL is that there is no
explanation for why this works, or any guarantee that this will always work.
I would need to have the source-code for VFX to figure out why VFX has
this bug and what can be done to fix the bug (not just put a band-aid on
the problem with ALIGN and not have any explanation for why this works
sometimes but not every time). I would also need to have a lot more than
24 hours in each day --- or I would need to get paid by Stephen Pelc to debug
VFX for him --- as it currently stands, I have neither the time to debug VFX
nor adequate information about how VFX works internally.

If Stephen Pelc put this bug into VFX purposely, in order to defeat me,
he has succeeded! I don't know how to fix the bug. Stephen Pelc is the winner!

Hans Bezemer says that Stephen Pelc did not introduce this bug purposefully.
This implies that Stephen Pelc is just plain incompetent. VFX worked in the past,
and now it doesn't work. Incompetance is a realistic explanation.
Thanks for pointing that out, Hans! I would never have guessed such an explanation.
Stephen Pelc is getting old. Senility and/or alcoholism are problems at his age.
Also, the only "programmer" that he employs is Peter Knaggs who is so incompetent
that he failed to implement a linked list:
https://groups.google.com/g/comp.lang.forth/c/cMa8wV3OiY0/m/INBDVBh0BgAJ
I don't think that Peter Knaggs is a programmer at all. A linked list should be easy!
I think that Stephen Pelc's multi-billion-dollar multi-national actually consists only
of Stephen Pelc and his dog Barto, and neither of them are any good at programming.

Hans Bezemer

unread,
Feb 3, 2023, 6:51:14 PM2/3/23
to
I cannot be sure what exactly caused the bug in VFX. But given all possibilities, it seems
UNLIKELY he caused it on purpose. Just to bug you. It's simply applying Occams razor.

But why does a clever boy like you depends on somebody elses compiler? That's what
I can't figure out. Almost everybody down here uses his own. The one they built and
raised and eventually fell in love with.

Hans Bezemer <3 4tH

dxforth

unread,
Feb 3, 2023, 8:05:48 PM2/3/23
to
On 4/02/2023 10:51 am, Hans Bezemer wrote:
>
> But why does a clever boy like you depends on somebody elses compiler? That's what
> I can't figure out. Almost everybody down here uses his own. The one they built and
> raised and eventually fell in love with.

Maintaining the narrative of the victim is what's important.

Hugh Aguilar

unread,
Feb 4, 2023, 12:48:28 PM2/4/23
to
So far, Stephen Pelc's support has been primarily from Hans Bezemer, DXforth
and Juergen Pintaske.

Hans Bezemer enjoys flinging insults at me. First he calls me a "chirping bird,"
and now he calls me a "clever boy."
Hans' 4th that he fell in love with is a toy byte-code interpreter written in C.
He doesn't know what Harvard Architecture is. He doesn't know what copy-on-write
is. He doesn't really know anything about programming. He makes educational videos.

DXforth said this earlier:
On Thursday, January 12, 2023 at 5:44:22 PM UTC-7, dxforth wrote:
> On 12/01/2023 10:35 pm, albert wrote:
> > However if you do bother about ANS/ISO , then you can reap great benefit
> > from the efforts within MPE to deliver a compiler that be standard.
> > Even if you are not a paying customer.
> The Standard and what it permits is too complicated for the average user
> to understand. Implementers too, it would seem. ANS dug a hole so deep
> it challenges everyone.

This is just DXforth's endless stream of drivel about how much he hates the
idea of a Forth standard, and how this puts his awesome creativity in a box.
So far, his awesome creativity has been to write a Z80 Forth (almost certainly
he used the source-code from Loelliger's book for this). His greatest achievment
is the END macro that he has been bragging about for decades:
: END POSTPONE THEN POSTPONE EXIT ; IMMEDIATE
He tried for a long time to say that I support him in his hatred for the idea of a Forth
standard, but he eventually stopped because of the obvious problem that I am a strong
proponent of having a Forth standard --- the Forth community should start any time!
He gets a thrill out of mocking me by using the term "disambiguifier" for various
kindergarten-level Forth that he has written that has nothing to do with disambiguifiers.
He really doesn't know anything about the subject.

Juergen Pintaske, of course, endlessly spams this forum with advertisements
for books that were written in the 1980s that he now (4 decades later) claims
that he is the coauthor of. He also has his "A Start with Forth" book that is just
an over-grown sales pamphlet for VFX. He knows nothing about Forth programming!

Stephen Pelc's support base is composed entirely of pompous fake-experts.
The bottom line is that VFX is failing to compile ANS-Forth compliant code that
it used to compile correctly (SwiftForth still does compile this correctly).
I'm not a major "victim" here because I can dump VFX and use a different compiler.
The major victims are the MPE customers who have a large investment in VFX
and who expected VFX to continue to compile ANS-Forth code correctly.

I have always relied on VFX. The failure of VFX to compile the ANS-Forth
novice-package is an impetus for me to finally just write my own Forth system.
I'm also looking into Ilya Tarasov's Ibris Forth (I'm likely the only person here
who knows where the name "Ibris" comes from and thinks that it is a cool name).
Forth has some kind of future that Stephen Pelc and his bug-ridden VFX
will not be included in. Stephen Pelc was always a negative contributor to Forth
because he purposely crippled Forth-200x in order to make VFX look good
in comparison. So, good riddeance to Stephen Pelc and his salesman Juergen Pintaske!

Jurgen Pitaske

unread,
Feb 4, 2023, 1:40:24 PM2/4/23
to
F O R T H K I L L E R H U G H A Q U I S H I T T I S B A C K

has escaped from his Mental Home again.
There was so much peace and quiet here
when he could not escape as of Corona.

Now he dumps his shit on CLF again.

There seems to be no work in Taxi Driving and Plumbing anymore either ...

Is there anybody here that gives a **** about the orgasms he generates while producing this shit?
At least it is visible that he is getting old.
It takes him a lot longer now.

And his brain is fortunately retiring,
as he does not remember the facts anymore.
For many years I have nothing to do with MPE / VFX anymore.
And it had been all documented here. But he is getting brain dead.

But a good point to remind me of the Forth Bookshelf I created,
and which will still be there when he is 6 foot under -
and I am quite proud of the work I did there.

Some of these books might be a bit dated,
but are there any better ones?
And they are still bought by people who are interested in Forth;
OK, there are only very few people,
as this guy tries to force them all away from here;

and number 5 - A Start with Forth -
is to my knowledge the newest Forth Documentation generated.
And I collected it and published it.

My knowledge of Forth is rather limited, just the basics;
does it matter?
But I enjoyed the bits I learnt
with the help of many here

and in the German Forth community
where such an idiot would just be excluded.

My Forth Bookshelf:
This is part of the current Forth Bookshelf and some other books and can be found at
https://www.amazon.co.uk/Juergen-Pintaske/e/B00N8HVEZM

Is there any interest?
Well, look at the ones that are included in the top 100 of the Compiler Books:
BESTSELLERS IN COMPILER DESIGN.
https://www.amazon.com/gp/bestsellers/books/3970/ref=pd_zg_hrsr_b_1_5_last#5
Today only 3 of these books are there, but 3% is not bad, and it seems only one other Forth book.
Sometimes it goes up to 10% or more.
Not bad for a language like Forth.

1 Charles Moore - Forth - The Early Years: Background information about the
beginnings of this Computer Language
2 Charles Moore - Programming A Problem Oriented Language: Forth - how the
internals work
3 Leo Brodie - Starting Forth -The Classic
4 Leo Wong – Juergen Pintaske – Stephen Pelc FORTH LITE TUTORIAL: Code
tested with free MPE VFX Forth, SwiftForth and Gforth
5 Juergen Pintaske – A START WITH FORTH - Bits to Bites Collection
– 12 Words to start, then 35 Words, Javascript Forth on the Web, more
( 6 Stephen Pelc - Programming Forth: Version July 2016 )
7 Brad Rodriguez - Moving Forth / TTL CPU / B.Y.O. Assembler
8 Tim Hentlass - Real Time Forth

9 Chen-Hanson Ting - Footsteps In An Empty Valley issue 3
10 Chen-Hanson Ting - Zen and the Forth Language: EFORTH for the
MSP430G2552 from Texas Instruments
11 Chen-Hanson Ting - eForth and Zen - 3rd Edition 2017: with 32-bit
86eForth v5.2 for Visual Studio 2015
12 Chen-Hanson Ting - eForth Overview
13 Chen-Hanson Ting - FIG-Forth Manual Document /Test in 1802 IP
14 Chen-Hanson Ting - EP32 RISC Processor IP: Description and
Implementation into FPGA – ASIC tested by NASA
15 Chen-Hanson Ting – Irriducible Complexity
16 Chen-Hanson Ting - Arduino controlled by eForth
17 Chen-Hanson Ting – eForth as Arduino Sketch – no Programmer needed

( 18 Burkhard Kainka - Learning Programming with MyCo: )
Learning Programming easily - independent of a PC (Forth code to follow soon)
( 19 Burkhard Kainka - BBC Micro:bit: Tests Tricks Secrets Code, Additional MicroBit )
information when running the Mecrisp Package
( 20 Burkhard Kainka – Thomas Baum – Web Programming ATYTINY13 )
21 Georg Heinrichs - The ATTINY Project – Why Forth?
22 Dr. Karl Meinzer - IPS, a Forth-like language for Space
Juergen Pintaske, publisher, July 2020

Jurgen Pitaske

unread,
Feb 4, 2023, 1:44:49 PM2/4/23
to
Oh, and just for completeness that his brain is going bananas:

He had one another post:
https://groups.google.com/g/comp.lang.forth/c/Fmr2UH5FeoE

Where he blames Swiftforth for having the VFX bug.
Well, then he called it a typo and started this one here.
Thank you very much for proving my point.
Sad to hear, but there we are.

Hans Bezemer

unread,
Feb 4, 2023, 2:04:29 PM2/4/23
to
Double standards here. If I call Hugh 'a clever boy' he takes it for an insult, but if I call
myself 'a clever boy' he says I call myself an expert!

But anyways, you may call 4tH a 'toy compiler' - but at least I got my own compiler.
So I never have to complain the author put in a bug just to annoy me. I trust the guy
who made it, you know. Unconditionally, that is. Yeah, I'm a real humanitarian.

Hans Bezemer

none albert

unread,
Feb 4, 2023, 2:49:52 PM2/4/23
to
In article <c8a05d29-d76c-4d43...@googlegroups.com>,
Hugh Aguilar <hughag...@gmail.com> wrote:
>I'm also looking into Ilya Tarasov's Ibris Forth (I'm likely the only
>person here
>who knows where the name "Ibris" comes from and thinks that it is a cool name).
>Forth has some kind of future that Stephen Pelc and his bug-ridden VFX
>will not be included in. Stephen Pelc was always a negative contributor to Forth
>because he purposely crippled Forth-200x in order to make VFX look good
>in comparison. So, good riddeance to Stephen Pelc and his salesman
>Juergen Pintaske!

I studied the code that the VFX compiler generates and I'm impressed.
Calling VFX "bug-ridden" makes you look like Trump.
I'm disappointed that you don't name me among the supporters of VFX.
Stephen Pelc has a valid business interest into Forth-200x and
he has contributed to the discussion. Standards are compromises and
it is no more than normal than that one of the two most important
commercial applications is taken into account.

Groetjes Albert
--
Don't praise the day before the evening. One swallow doesn't make spring.
You must not say "hey" before you have crossed the bridge. Don't sell the
hide of the bear until you shot it. Better one bird in the hand than ten in
the air. First gain is a cat spinning. - the Wise from Antrim -

dxforth

unread,
Feb 4, 2023, 9:17:09 PM2/4/23
to
On 5/02/2023 4:48 am, Hugh Aguilar wrote:
>
> DXforth said this earlier:
> On Thursday, January 12, 2023 at 5:44:22 PM UTC-7, dxforth wrote:
>> On 12/01/2023 10:35 pm, albert wrote:
>>> However if you do bother about ANS/ISO , then you can reap great benefit
>>> from the efforts within MPE to deliver a compiler that be standard.
>>> Even if you are not a paying customer.
>> The Standard and what it permits is too complicated for the average user
>> to understand. Implementers too, it would seem. ANS dug a hole so deep
>> it challenges everyone.
>
> This is just DXforth's endless stream of drivel about how much he hates the
> idea of a Forth standard, and how this puts his awesome creativity in a box.

I've not stopped anyone from using ANS/200x or from joining you in your 'standard
in opposition'. Nor has anyone. Any lack of success on those fronts lies at the
feet of their creators and not invented enemies. When the simplest explanation
is lack of interest, I go with that.

Lorem Ipsum

unread,
Feb 5, 2023, 11:32:19 PM2/5/23
to
Wow! I literally don't know what to say. Hugh makes a couple of posts, and all the other nut cases start their jabbering again.

Sometimes I have to wonder about myself. I must be crazy to be any part of this nuthouse. I think I need to learn C++.

--

Rick C.

- Get 1,000 miles of free Supercharging
- Tesla referral code - https://ts.la/richard11209

Hans Bezemer

unread,
Feb 6, 2023, 1:48:00 AM2/6/23
to
We love you too, Rick. ;-)

Hans Bezemer CLF <3 Rick

dxforth

unread,
Feb 6, 2023, 4:33:54 AM2/6/23
to
On 6/02/2023 3:32 pm, Lorem Ipsum wrote:
>
> Wow! I literally don't know what to say. Hugh makes a couple of posts, and all the other nut cases start their jabbering again.
>
> Sometimes I have to wonder about myself. I must be crazy to be any part of this nuthouse. I think I need to learn C++.

You're saying you came to c.l.f. to learn Forth? Oy vey! How well did that
work out?

Hans Bezemer

unread,
Feb 6, 2023, 6:21:58 AM2/6/23
to
On Monday, February 6, 2023 at 10:33:54 AM UTC+1, dxforth wrote:
> > Sometimes I have to wonder about myself. I must be crazy to be any part of this nuthouse. I think I need to learn C++.
> You're saying you came to c.l.f. to learn Forth? Oy vey! How well did that
> work out?
True. I learned Forth using this combo:
- Lots of text books (sorry - no internet in the days);
- Lots of trial and error (I call it "being raised by the compiler");
- Wil Baden;
- Occasional perls I find either here, Rosetta code or in FD.

I still think - seriously - too little stuff is posted here. And I can understand. There is no fun
in being beaten down (without alternative) when you're posting code. I loved the "I can write
the fastest SQRT" though. We should do that more often.

Hans Bezemer

P.S. I still love the rewritten CONCAT implementation. I don't mind being beaten down when it
results in better code. Hey, you may lose a few teeth, but at least you get a free beer!

dxforth

unread,
Feb 6, 2023, 9:04:23 PM2/6/23
to
And even when no better solution is offered (few critics want to be that
invested), their gut reaction can still be honest and enough to spur one
to re-think the problem/proposition. I see c.l.f. as a sounding board.
Expecting it to be font of all wisdom (or even just interested), one is
likely to leave disappointed. So don't use it for that.

Hugh Aguilar

unread,
Feb 6, 2023, 10:58:06 PM2/6/23
to
On Saturday, February 4, 2023 at 12:49:52 PM UTC-7, none albert wrote:
> In article <c8a05d29-d76c-4d43...@googlegroups.com>,
> Hugh Aguilar <hughag...@gmail.com> wrote:
> >I'm also looking into Ilya Tarasov's Ibris Forth (I'm likely the only
> >person here
> >who knows where the name "Ibris" comes from and thinks that it is a cool name).
> >Forth has some kind of future that Stephen Pelc and his bug-ridden VFX
> >will not be included in. Stephen Pelc was always a negative contributor to Forth
> >because he purposely crippled Forth-200x in order to make VFX look good
> >in comparison. So, good riddeance to Stephen Pelc and his salesman
> >Juergen Pintaske!

> I studied the code that the VFX compiler generates and I'm impressed.
> Calling VFX "bug-ridden" makes you look like Trump.

My novice-package worked fine in the past, and it still works on SwiftForth.
I made a lot of effort to ensure that the novice-package was fully ANS-Forth
compliant. Now it crashes on VFX in multiple places. This seems to be
POSTPONE LITERAL but I haven't delved into it deeply enough to be sure.
I really don't have time to debug VFX for Stephen Pelc, and I don't have the
source-code to VFX anyway --- Stephen Pelc needs to debug his bug-ridden VFX.
You "studied" VFX code??? Most likely you don't know what POSTPONE is.

I could just go back to the old version of VFX that still worked.
Hopefully Stephen Pelc still has this available on his MPE website.

> I'm disappointed that you don't name me among the supporters of VFX.

Okay.
You can make a spectacle of yourself on your knees for Stephen Pelc.
You are henceforth considered to be fully the peer of Juergen Pintaske,
Hans Bezemer and DXforth. You've earned it! Be pround of your achievement!

> Stephen Pelc has a valid business interest into Forth-200x and
> he has contributed to the discussion. Standards are compromises and
> it is no more than normal than that one of the two most important
> commercial applications is taken into account.

It is only normal for astroturf projects (corporate marketing gimmicks
promoted as being grassroots projects to lure in the foolish).

Stephen Pelc is in the business of selling VFX.
He wants Forth-200x to be crippled so he can tell his customers:
"You need to pay for VFX to get a useful Forth system. Forth-200x is
a toy language intended to teach novices the basics of Forth, so they can
apply for work as VFX programmers and at least know about DUP SWAP etc..
Play with gForth for a while, then upgrade to VFX when you have the money."

Rquotations are more important to the future of Forth than the Forth-200x standard.
Stephen Pelc accepted the Paysan-faked quotations into Forth-200x. That was
purposeful crippling of Forth-200x --- that is all that anybody needs to know about him.

> Don't praise the day before the evening. One swallow doesn't make spring.
> You must not say "hey" before you have crossed the bridge. Don't sell the
> hide of the bear until you shot it. Better one bird in the hand than ten in
> the air. First gain is a cat spinning. - the Wise from Antrim -

This goofy pseudo-philosophic blather definitely make you a peer of DXforth.
He is always spouting nonsense like this too.

dxforth

unread,
Feb 7, 2023, 12:10:20 AM2/7/23
to
You could do with a one-line sig. It would leave room for something new.

Jach Feng

unread,
Feb 7, 2023, 12:27:02 AM2/7/23
to
Lorem Ipsum 在 2023年2月6日 星期一中午12:32:19 [UTC+8] 的信中寫道:
Don't "think", just go ahead and learn C++. It may help your winkled mind from crazy:-)

--Jach

Hugh Aguilar

unread,
Feb 7, 2023, 8:01:44 PM2/7/23
to
On Monday, February 6, 2023 at 10:27:02 PM UTC-7, Jach Feng wrote:
> Lorem Ipsum 在 2023年2月6日 星期一中午12:32:19 [UTC+8] 的信中寫道:
> > On Saturday, February 4, 2023 at 1:40:24 PM UTC-5, jpit...@gmail.com wrote:
> > > My knowledge of Forth is rather limited, just the basics;
> > > does it matter?

Yes, it does matter.

> > Sometimes I have to wonder about myself. I must be crazy to be any part of this nuthouse. I think I need to learn C++.
> Don't "think", just go ahead and learn C++. It may help your winkled mind from crazy:-)

Jach, you are not being realistic.
If Rick Collins wasn't smart enough to learn Forth, he isn't going to be smart enough
to learn C or C++. People of his skill level are normally provided with a simple
scripting language such as BASIC or Lua. This is why the BASIC Stamp was popular.

I don't think that anybody on comp.lang.forth is smart enough to learn Forth.
None of them are actually programming in Forth --- this is why none of them noticed
that VFX has serious bugs in POSTPONE LITERAL (and possibly any use of POSTPONE).
This is also why Stephen Pelc has enthusiastic supporters of his bug-ridden VFX who
hate me because I have pointed out that VFX has bugs and will no longer compile my
novice-package that is fully ANS-Forth compliant --- they aren't bothered by bugs in VFX
because they aren't using VFX to write Forth code anyway --- the bugs in VFX aren't
a problem for those who spend their time promoting VFX but who never have to
actually make any Forth code work on VFX.

Getting code to actually work is the difficult part of programming, so many "programmers"
avoid ever being put in a position where they have to do this --- this is why comp.lang.forth
is full of super-duper programming experts who never do any programming.

I put effort into writing my MSP-430 assembler, and now Stephen Pelc has sabotaged
my novice-package by releasing this new bug-ridden version of VFX that no longer
compiles my novice-package that I have been using under VFX for many years.
I think that he introduced these bugs on purpose to stop me from using VFX
to write code for the MSP-430 that would be in competition with his MSP-430
cross-compiler. Stephen Pelc is not the friend of the Forth community --- he considers
the Forth community to be his competition --- he sabotages the Forth community.

dxforth

unread,
Feb 7, 2023, 10:54:10 PM2/7/23
to
On 8/02/2023 12:01 pm, Hugh Aguilar wrote:
>
> I don't think that anybody on comp.lang.forth is smart enough to learn Forth.
> None of them are actually programming in Forth --- this is why none of them noticed
> that VFX has serious bugs in POSTPONE LITERAL (and possibly any use of POSTPONE).

Your complaint is nobody has recently used the Novice Pack else they would have
noticed. That's very likely correct.

> Getting code to actually work is the difficult part of programming, so many "programmers"
> avoid ever being put in a position where they have to do this --- this is why comp.lang.forth
> is full of super-duper programming experts who never do any programming.

That's why the Novice Pack was created - to eliminate the difficulties. In telling
programmers they have neither the time nor need to re-invent the wheel, one is
creating the "super-duper programming experts" who have no experience they can rely
on or call their own because everything has come second-hand.

Jan Coombs

unread,
Feb 8, 2023, 10:10:14 AM2/8/23
to
On Wed, 8 Feb 2023 14:54:06 +1100
dxforth <dxf...@gmail.com> wrote:

> In telling
> programmers they have neither the time nor need to re-invent the wheel, one is
> creating the "super-duper programming experts" who have no experience they can rely
> on or call their own because everything has come second-hand.

True, ISTR that Elizabeth Rather said it is easier to teach a person with system/domain specific product experience to write Forth than to teach a forth expert to pick up the domain specific knowledge.

Jan Coombs
--

Anton Ertl

unread,
Feb 8, 2023, 12:58:22 PM2/8/23
to
Jan Coombs <jan4comp....@murray-microft.co.uk> writes:
>True, ISTR that Elizabeth Rather said it is easier to teach a person with system/domain specific product experience to write Forth than to teach a forth expert to pick up the domain specific knowledge.

That is certainly true for her: She is an expert in teaching Forth.

In general, if the programming part is simple, the approach outlined
above may work out. If the requirements on the programming are not so
simple, a domain expert with only a short programming education will
get the domain part right, but is likely to get in trouble in the
programming. Such jobs require the collaboration of a domain expert
and a programming expert.

- 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: https://forth-standard.org/
EuroForth 2022: https://euro.theforth.net

Hugh Aguilar

unread,
Feb 8, 2023, 2:42:14 PM2/8/23
to
DXforth is a typical troll.
He routinely twists a person's words to seem as if he said something
that he did not say (usually the exact opposite of what he did say).
DXforth does to get a response from the person, then he twists this response
again to something else --- he continues doing this so long as he continues
to get responses --- this is the "troll game" that we see so often on comp.lang.forth
(and a big part of why I have lost interest in comp.lang.forth).

DXforth has his Z80 Forth that is most likely copied out of Loelliger's book:
"Threaded Interpretive Languages" (I read the book when I was still in high-school).
DXforth provides comp.lang.forth with an endless stream of drivel in which he
claims that his awesome creativity must never be put in a box by any Forth standard
or code-library, because he can write super-efficient programs that are "exactly right"
due to him writing them entirely from scratch (Elizabeth Rather says the same thing).
DXforth is a clown --- I want him to stop pestering me --- I want him to just go away.
Elizabeth Rather has gone away --- good riddance!

On Tuesday, February 7, 2023 at 8:54:10 PM UTC-7, dxforth wrote:
> On 8/02/2023 12:01 pm, Hugh Aguilar wrote:
> >
> > I don't think that anybody on comp.lang.forth is smart enough to learn Forth.
> > None of them are actually programming in Forth --- this is why none of them noticed
> > that VFX has serious bugs in POSTPONE LITERAL (and possibly any use of POSTPONE).

> Your complaint is nobody has recently used the Novice Pack else they would have
> noticed. That's very likely correct.

This is obviously not what I said. DXforth is a liar trying to put words in my mouth.
I said that nobody is doing any programming in VFX or they would have noticed
the bug in the new version VFX as soon as it came out (of, if they are programming
in VFX, they aren't using POSTPONE most likely because it is too advanced for them).

The point of this thread is that the new version of VFX has serious bugs.
The silence from Stephen Pelc is deafening!
Stephen Pelc obviously put these bugs in VFX to prevent my novice-package from working.
The bugs are in POSTPONE which is a crucial part of my early-binding MACRO: that
depends upon the disambiguifiers to be ANS-Forth compliant.
Stephen Pelc totally lied when he said that the disambiguifiers don't work.
The disambiguifiers fix the bug in ANS-Forth that makes FIND and tick ambiguous
and unusable on all of the words in ANS-Forth (51 of them) whose definition includes
the statement: "Interpretation semantics for this word are undefined."
https://groups.google.com/g/comp.lang.forth/c/T-yYkpVwYew/m/tNE4Q9aNDwAJ

> > Getting code to actually work is the difficult part of programming, so many "programmers"
> > avoid ever being put in a position where they have to do this --- this is why comp.lang.forth
> > is full of super-duper programming experts who never do any programming.

> That's why the Novice Pack was created - to eliminate the difficulties. In telling
> programmers they have neither the time nor need to re-invent the wheel, one is
> creating the "super-duper programming experts" who have no experience they can rely
> on or call their own because everything has come second-hand.

This is obviously not what I have ever said.
The novice-package was created to provide building blocks for writing programs,
so the programmer can concentrate on writing his program, rather than dinking around
with implementing data-structures that were invented decades ago.
I'm not writing people's programs for them.
The novice-package is not for script kiddies who want their program already written
for them, and who will then write simple scripts on top of the program.
People have to be able to write their own programs or the novice-package won't help them.

The novice package speeds up writing programs (certainly for me, as I don't have time
to reimplement basic data-structures over and over again). For example, I wrote my
<SWITCH with FAST-SWITCH> and SLOW-SWITCH> quickly using the novice-package.
Later on, for the sake of efficiency, I did go back and rewrite the code for doing a
binary-search to be "exactly right for the application.' Note however, that I did this
*after* I had the program working --- if I had to do this on my first attempt at writing
the program I would have likely become bogged down in writing the binary-search
which would have been a huge distraction from writing the SLOW-SWITCH> code.
Note also that Gerry Jackson has failed to write anything comparable to SLOW-SWITCH>
because he copied Michael Gassenenko's code that only had something comparable
to my FAST-SWITCH> and was not robust so it couldn't be upgraded to support
a sparse array, which is what SLOW-SWITCH> does. There is a big difference between
using a code-library (what I do) and copying somebody else's code (what Gerry Jackson
does, and what Elizabeth Rather described as: Having a lot of old programs in one's
back pocket, then reworking these old programs as slightly different new programs.)

As another example, I wrote HJA430 (my MSP-430 assembler) quickly because the
novice-package provided adequate data-structures (the bit-field struct helped a lot
in constructing the opcode). The code is straightforward and simple.
I was able to focus my mind on new ideas, such as implementing code blocks
(similar to C's code blocks but better). The assembler would have been much more
complicated if I had had to write everything from scratch without the novice-package.

The novice-package also makes these programs more efficient. Elizabeth Rather believes
that data-structures that are "exactly right for the application" will be super-efficient compared
to general-purpose data-structures that work for any application. She is wrong.
I put effort into making my novice-package efficient.
This is more effort than any application programmer is going to put in when writing
an application under deadline --- he can't tell the boss: "I will get started on my
assigned task as soon as I finish writing an array-definer and array-sort that is exactly right for
this application. I will start on the assigned task next week, unless something else comes up."

To keep his job he has to tell the boss that the task is finished at the end of the day:
"I have already finished the assigned task. I used a bubble-sort on the array of structs,
so it is slow as molasses, but Forth code is expected to be inefficient, so who cares?
Or:
"I have already finished the assigned task using an array definer provided
in the book: 'Starting Forth.' I also used Wil Baden's array-sort code, both of which
require the array element to be one-cell in size. An array of cells is really the wrong
data-structure for holding sorted structs and supporting insertion or removal of elements.
I finished my task quickly enough, but it will need to be rewritten from scratch by somebody
who knows more about Forth than what was described in: 'Starting Forth.'"
Or:
"I have already finished the assigned task. I used the novice-package so it is efficient."

Hugh Aguilar

unread,
Feb 8, 2023, 2:43:29 PM2/8/23
to
On Wednesday, February 8, 2023 at 10:58:22 AM UTC-7, Anton Ertl wrote:
> Jan Coombs <jan4comp....@murray-microft.co.uk> writes:
> >True, ISTR that Elizabeth Rather said it is easier to teach a person with system/domain specific product experience to write Forth than to teach a forth expert to pick up the domain specific knowledge.

> That is certainly true for her: She is an expert in teaching Forth.
>
> In general, if the programming part is simple, the approach outlined
> above may work out. If the requirements on the programming are not so
> simple, a domain expert with only a short programming education will
> get the domain part right, but is likely to get in trouble in the
> programming. Such jobs require the collaboration of a domain expert
> and a programming expert.

What Anton Ertl said is true.

dxforth

unread,
Feb 8, 2023, 10:52:19 PM2/8/23
to
On 9/02/2023 6:42 am, Hugh Aguilar wrote:
>
> DXforth provides comp.lang.forth with an endless stream of drivel in which he
> claims that his awesome creativity must never be put in a box by any Forth standard
> or code-library, because he can write super-efficient programs that are "exactly right"
> due to him writing them entirely from scratch (Elizabeth Rather says the same thing).

It's Moore who said it:

"all the programmers in the world are out there inventing for you, the general solution
[...] I have demonstrated in the past, ad nauseam, applications where I can reduce the
amount of code by 90% percent and in some cases 99%. It can be done, but in a case by
case basis."

And on the premise that the programmer should to do the thinking, Forth was created.
That's in stark contrast to most languages. It's perhaps testimony to the resilience
of Forth and its users that despite all the offers of 'an easier way' they prefer to
do it themselves. Which includes you. You claim the right to think for yourself but
would deny others the same. Leaders are like that.

dxforth

unread,
Feb 9, 2023, 2:55:59 AM2/9/23
to
On 9/02/2023 6:42 am, Hugh Aguilar wrote:
>
> DXforth has his Z80 Forth that is most likely copied out of Loelliger's book:
> "Threaded Interpretive Languages" (I read the book when I was still in high-school).

Why the endless references to Loelliger? Let me guess. You read the book and decided
you would write a forth for your Kaypro. But as with all the forths you have threatened
to write you never got around to it and their ghosts haunt you.

dxforth

unread,
Feb 9, 2023, 4:30:36 AM2/9/23
to
Never knew you were both so aligned in your thinking. With all this good
will there may be hope for 200x yet :) BTW what makes a programming expert?
ISTM many well-known programmers originally came from other domains.

Hans Bezemer

unread,
Feb 9, 2023, 10:40:04 AM2/9/23
to
On Wednesday, February 8, 2023 at 8:42:14 PM UTC+1, Hugh Aguilar wrote:
> DXforth is a typical troll.
> DXforth is a clown --- I want him to stop pestering me --- I want him to just go away.
Ad hominem - so I'll just ignore that. Why do you want him to go away? I thought you'd
lost interest in c.l.f. - and yet: here we are.

> > Your complaint is nobody has recently used the Novice Pack else they would have
> > noticed. That's very likely correct.
I think I'd subscribe to that. It's a massive package and I don't really see the benefits of
it in my usual programming. But that's just me. Why don't you put it up in Github and see
how many people pick it up and discuss it? It would be real easy to end that discussion
with some actual numbers.

> The point of this thread is that the new version of VFX has serious bugs.
I only heard of one so far.

> Stephen Pelc obviously put these bugs in VFX to prevent my novice-package from working.
> The bugs are in POSTPONE which is a crucial part of my early-binding MACRO: that
> depends upon the disambiguifiers to be ANS-Forth compliant.
> Stephen Pelc totally lied when he said that the disambiguifiers don't work.
> The disambiguifiers fix the bug in ANS-Forth that makes FIND and tick ambiguous
> and unusable on all of the words in ANS-Forth (51 of them) whose definition includes
> the statement: "Interpretation semantics for this word are undefined."
> https://groups.google.com/g/comp.lang.forth/c/T-yYkpVwYew/m/tNE4Q9aNDwAJ
Well, if the standards state "Interpretation semantics for this word are undefined" then
that's the end of the line. You state yourself that's due to "a bug in ANS Forth". Hence,
if a compiler is ANS compliant, it will contain that "bug". So what is exactly bugging you:
the "bug" in ANS or the "bug" in VFX "not conforming to ANS. I lost track.

> The novice-package was created to provide building blocks for writing programs,
> so the programmer can concentrate on writing his program, rather than dinking around
> with implementing data-structures that were invented decades ago.
> I'm not writing people's programs for them.
> The novice-package is not for script kiddies who want their program already written
> for them, and who will then write simple scripts on top of the program.
> People have to be able to write their own programs or the novice-package won't help them.
Are we having a "naming problem" here? If the novice package is not targeted to newbies
or experts, what's its target audience?

> The novice package speeds up writing programs (certainly for me, as I don't have time
> to reimplement basic data-structures over and over again). For example, I wrote my
> <SWITCH with FAST-SWITCH> and SLOW-SWITCH> quickly using the novice-package.
> Later on, for the sake of efficiency, I did go back and rewrite the code for doing a
> binary-search to be "exactly right for the application.' Note however, that I did this
> *after* I had the program working --- if I had to do this on my first attempt at writing
> the program I would have likely become bogged down in writing the binary-search
> which would have been a huge distraction from writing the SLOW-SWITCH> code.
> Note also that Gerry Jackson has failed to write anything comparable to SLOW-SWITCH>
> because he copied Michael Gassenenko's code that only had something comparable
> to my FAST-SWITCH> and was not robust so it couldn't be upgraded to support
> a sparse array, which is what SLOW-SWITCH> does. There is a big difference between
> using a code-library (what I do) and copying somebody else's code (what Gerry Jackson
> does, and what Elizabeth Rather described as: Having a lot of old programs in one's
> back pocket, then reworking these old programs as slightly different new programs.)
Well, speed is your personal "thing". I know that different techniques scale differently.
E.g. a table to look up some options at the start of a program won't really benefit from
implementing a blindingly fast perfect hash algorithm. Even in its most primitive O(n)
form it's so fast users won't notice. Up to about 100 entries (in 4tH) CASE..OF will
beat any other lookup mechanism (apart from "direct access"). Binary searches will give
a decent performance for a wide range of values. Combined with hashes it's my preferred
technique for getting a good balance between speed, allocated memory and ease
of use (for the programmer).

I can't speak for others, but I got a number of datastructures that cater for that. I
recently analyzed a sizeable repository using a couple of 4tH programs in 15s. That's
hardly two gulps of coffee. Do you really think speeding that up 100 fold will significantly
change my working day?

> I was able to focus my mind on new ideas, such as implementing code blocks
> (similar to C's code blocks but better). The assembler would have been much more
> complicated if I had had to write everything from scratch without the novice-package.
Everybody has the tools he or she is comfortable with. I recently had a discussion about
the use of a REGEX package. Personally, I rarely use it. I have my own tools - and proved
this approach was viable. And that's the end of it. I'm not saying my approach should
rule the world. I'm saying "it works" - and should add: "for me". I don't think people should
be out to convert the world to THEIR approach, when other approaches are just as viable.
If it works for you: fine. If it works for others: even better. But never claim there are no
other viable alternatives.

> The novice-package also makes these programs more efficient. Elizabeth Rather believes
> that data-structures that are "exactly right for the application" will be super-efficient compared
> to general-purpose data-structures that work for any application. She is wrong.
Well, have you ever considered that she may not be wrong, but that sometimes "good is good
enough"? I like beating Python or Ruby over the head with their abysmal performance like any
other man, but I have to admit that sometimes other properties than just raw speed are more
important. And especially package-wise Python beats ANY Forth compiler.

> I put effort into making my novice-package efficient.
That's worth some praise.

> This is more effort than any application programmer is going to put in when writing
> an application under deadline --- he can't tell the boss: "I will get started on my
> assigned task as soon as I finish writing an array-definer and array-sort that is exactly right for
> this application. I will start on the assigned task next week, unless something else comes up."
True. That's why - in spite of the Forth myth that "one doesn't need libraries" I wrote
500+ of them. You'll see a whole bunch of includes in many of my programs. I
never regretted that. Recently I added LibreOffice Calc generation to a program of mine
by just adding one more "INCLUDE". Works like a charm. I can do the same for .XLS,
.RTF, .HTML or LaTeX. I need that more often for work than a "quick switch". But that's
me. That's my line of work. You don't have to agree with me.

> To keep his job he has to tell the boss that the task is finished at the end of the day:
> "I have already finished the assigned task. I used a bubble-sort on the array of structs,
> so it is slow as molasses, but Forth code is expected to be inefficient, so who cares?
In my experience delivery dates are more important in business than any other property.
It just has to work and it has to be released yesterday. That's why IMHO abstracted
functionality works (aka libs).

> "I have already finished the assigned task using an array definer provided
> in the book: 'Starting Forth.' I also used Wil Baden's array-sort code, both of which
> require the array element to be one-cell in size. An array of cells is really the wrong
> data-structure for holding sorted structs and supporting insertion or removal of elements.

4tH has index based sorting routines. It can handle ANY type of structure and does
the job "in place". I recently used it to sort a double cell array. Although Wil Badens
routines are just fine for many tasks, sometimes you don't want to deal with an extra
index array. I built a whole bunch of sorting routines on that protocol, so one can swap
routines by just including another lib.

> "I have already finished the assigned task. I used the novice-package so it is efficient."
More likely: "I've already finished the assigned task because even someone brainless
can use Python - and it's got a massive amount of libs I can pull in so I can pretend
I'm very computer literate. Never mind it runs for 15 minutes to finish the task". And note
I detest Python! You'll find me dead on my keyboard writing a Python program..

Hans Bezemer

dxforth

unread,
Feb 9, 2023, 8:55:30 PM2/9/23
to
On 10/02/2023 2:40 am, Hans Bezemer wrote:
> On Wednesday, February 8, 2023 at 8:42:14 PM UTC+1, Hugh Aguilar wrote:
>> DXforth is a typical troll.
>> DXforth is a clown --- I want him to stop pestering me --- I want him to just go away.
> Ad hominem - so I'll just ignore that. Why do you want him to go away? I thought you'd
> lost interest in c.l.f. - and yet: here we are.
>
>>> Your complaint is nobody has recently used the Novice Pack else they would have
>>> noticed. That's very likely correct.
> I think I'd subscribe to that. It's a massive package and I don't really see the benefits of
> it in my usual programming. But that's just me. Why don't you put it up in Github and see
> how many people pick it up and discuss it? It would be real easy to end that discussion
> with some actual numbers.

I think it's very tricky writing something with the expectation others will use it.
In Forth the odds are the same as winning the lottery. I'll happily squirrel away
small routines I think I may one day need, but asking me to buy into a mindset that's
not my own isn't going to happen. I suspect that's true for most forthers. If we're
prepared to split over things like a standard, then it shouldn't come as a surprise.
If I see someone using their routines in their daily work they have my applause
because the former is all that matters.

Anton Ertl

unread,
Feb 10, 2023, 5:21:43 AM2/10/23
to
dxforth <dxf...@gmail.com> writes:
>BTW what makes a programming expert?

From <https://en.wikipedia.org/wiki/Expert>:

|An expert is somebody who has a broad and deep understanding and
|competence in terms of knowledge, skill and experience through
|practice and education in a particular field.

Hans Bezemer

unread,
Feb 10, 2023, 9:05:37 AM2/10/23
to
On Friday, February 10, 2023 at 11:21:43 AM UTC+1, Anton Ertl wrote:
> dxforth <dxf...@gmail.com> writes:
> >BTW what makes a programming expert?
> From <https://en.wikipedia.org/wiki/Expert>:
>
> |An expert is somebody who has a broad and deep understanding and
> |competence in terms of knowledge, skill and experience through
> |practice and education in a particular field.
Anton, I *really* like the way you're thinking, man! A good definition is
generally accepted - and agreeing on the definition is a prerequisite for
starting any sensible discussion.

However, in this case I'm afraid the dispute will focus on what constitutes
a "broad and deep understanding and competence". Without any criteria for
establishing that I'm afraid we're back to square one.

Because the person in question can (and probably will) state that "your
understanding and competence is neither broad nor deep enough".
(Where "your" is the placeholder for the particular opponent he addresses
at that particular moment - could be any of us).

Hans Bezemer

Marcel Hendrix

unread,
Feb 10, 2023, 1:18:23 PM2/10/23
to
On Friday, February 10, 2023 at 3:05:37 PM UTC+1, Hans Bezemer wrote:
> On Friday, February 10, 2023 at 11:21:43 AM UTC+1, Anton Ertl wrote:
> > dxforth <dxf...@gmail.com> writes:
[..]
>Because the person in question can (and probably will) state that "your
>understanding and competence is neither broad nor deep enough".

One is not an expert by declaring to be one, but because *others*
are of that opinion. That solves it.

-marcel

Hans Bezemer

unread,
Feb 10, 2023, 2:16:17 PM2/10/23
to
It's a bit post-modern, but by definition any criteria are chosen and hence
profoundly arbitrary. I can live with it. Now, can we start the roasting? ;-)

Hans Bezemer

Zbig

unread,
Feb 10, 2023, 3:49:46 PM2/10/23
to
I discovered today SmithForth https://dacvs.neocities.org/SF/ https://www.youtube.com/watch?v=a1UWxa2g9Us

Maybe this one will be nicer host for „novice package”? Not examined it yet, though.

Anton Ertl

unread,
Feb 10, 2023, 6:32:15 PM2/10/23
to
Hans Bezemer <the.bee...@gmail.com> writes:
>On Friday, February 10, 2023 at 11:21:43 AM UTC+1, Anton Ertl wrote:
>> dxforth <dxf...@gmail.com> writes:
>> >BTW what makes a programming expert?
>> From <https://en.wikipedia.org/wiki/Expert>:
>>
>> |An expert is somebody who has a broad and deep understanding and
>> |competence in terms of knowledge, skill and experience through
>> |practice and education in a particular field.
...
>However, in this case I'm afraid the dispute will focus on what constitutes
>a "broad and deep understanding and competence". Without any criteria for
>establishing that I'm afraid we're back to square one.

Considering the original issue, it's the manager of the project who
has to decide if the project requires a programming expert on the
team, and if so, who is competent enough to be the programming expert.
Likewise for domain expertise.

Those interested in programming expertise (and expertise in general)
may find <https://norvig.com/21-days.html> interesting. My takeaway
from that is that if you take, say, a mechanical engineer without
programming background and let Elizabeth Rather teach them Forth for a
few weeks, the ME will not be programming experts after that, no
matter how good Elizabeth Rather teaches.

This reminds me of the course "Roboter" (robots) I took as a CS
student. The course was held from an ME group and there were ME
students and CS students on the course. We got our grade (for four
semester-hours, which typically takes 150 hours of work) by
programming a robot in a BASIC-like language. My group consisted of
two CS students (don't remember if we also had an ME student in the
group, if so, he was not able to contribute), and we completed the
task with little preparation in 2 hours (with a time limit of four),
while the ME-only groups where having a much harder time, and I could
see why it was a 4 semester-hour course for them. My guess is that
this happened to be easy for the CS people, because the ME part was
easy even for us, and the CS part was easy for us, but not for the ME
students; if the task had been to do something that requires solving
some more involved ME problem and a bit of easy programming, the table
would have been reversed.

dxforth

unread,
Feb 10, 2023, 8:20:26 PM2/10/23
to
On 11/02/2023 10:10 am, Anton Ertl wrote:
> Hans Bezemer <the.bee...@gmail.com> writes:
>> On Friday, February 10, 2023 at 11:21:43 AM UTC+1, Anton Ertl wrote:
>>> dxforth <dxf...@gmail.com> writes:
>>>> BTW what makes a programming expert?
>>> From <https://en.wikipedia.org/wiki/Expert>:
>>>
>>> |An expert is somebody who has a broad and deep understanding and
>>> |competence in terms of knowledge, skill and experience through
>>> |practice and education in a particular field.
> ...
>> However, in this case I'm afraid the dispute will focus on what constitutes
>> a "broad and deep understanding and competence". Without any criteria for
>> establishing that I'm afraid we're back to square one.
>
> Considering the original issue, it's the manager of the project who
> has to decide if the project requires a programming expert on the
> team, and if so, who is competent enough to be the programming expert.
> Likewise for domain expertise.

Yes but one can't 'dial an expert'. Even Marcel's reputation-based
expertise is risky if it's not first-hand knowledge. How many boards of
companies have come unstuck because they chose a CEO based on reputation.
Cultivating reputation is one of the oldest tricks. There was a case
several years ago of an expert (medical IIRC) whose reputation derived
entirely from publishing papers in journals. So many of them that his
name was on everyone's lips. Problem was it was all smoke and mirrors.


none albert

unread,
Feb 11, 2023, 3:42:46 AM2/11/23