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


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

Make Forth Great Again!

Started bydjc <ciesinger@gmx.net>
First post2017-02-15 13:47 -0800
Last post2017-03-10 14:20 -0800
Articles 20 on this page of 43 — 24 participants

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


Contents

  Make Forth Great Again! djc <ciesinger@gmx.net> - 2017-02-15 13:47 -0800
    Re: Make Forth Great Again! Alex <alex@rivadpm.com> - 2017-02-15 22:34 +0000
    Re: Make Forth Great Again! "Elizabeth D. Rather" <erather@forth.com> - 2017-02-15 13:11 -1000
      Re: Make Forth Great Again! hughaguilar96@gmail.com - 2017-02-17 10:54 -0800
        Re: Make Forth Great Again! Cecil Bayona <cbayona@cbayona.com> - 2017-02-17 13:09 -0600
          Re: Make Forth Great Again! minforth@arcor.de - 2017-02-17 13:55 -0800
            Re: Make Forth Great Again! hughaguilar96@gmail.com - 2017-02-17 16:37 -0800
      Re: Make Forth Great Again! "HAA" <someone@microsoft.com> - 2017-02-18 11:54 +1100
        Re: Make Forth Great Again! hughaguilar96@gmail.com - 2017-02-17 18:19 -0800
          Re: Make Forth Great Again! hughaguilar96@gmail.com - 2017-02-17 19:27 -0800
      Re: Make Forth Great Again! gavino himself <jackvanc3@gmail.com> - 2017-03-14 05:06 -0700
    Re: Make Forth Great Again! Julian Fondren <julian.fondren@gmail.com> - 2017-02-15 15:51 -0800
      Re: Make Forth Great Again! Paul Rubin <no.email@nospam.invalid> - 2017-02-15 15:56 -0800
        Re: Make Forth Great Again! Julian Fondren <julian.fondren@gmail.com> - 2017-02-15 16:14 -0800
          Re: Make Forth Great Again! lehs <skydda.barnen@gmail.com> - 2017-02-16 02:03 -0800
            Re: Make Forth Great Again! minforth@arcor.de - 2017-02-16 02:55 -0800
            Re: Make Forth Great Again! hughaguilar96@gmail.com - 2017-02-17 10:25 -0800
              Re: Make Forth Great Again! Cecil Bayona <cbayona@cbayona.com> - 2017-02-17 12:55 -0600
                Re: Make Forth Great Again! hughaguilar96@gmail.com - 2017-02-17 11:31 -0800
                  Re: Make Forth Great Again! hughaguilar96@gmail.com - 2017-02-17 16:32 -0800
                Re: Make Forth Great Again! rickman <gnuarm@gmail.com> - 2017-02-17 16:09 -0500
                  Re: Make Forth Great Again! Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-02-17 19:39 -0500
        Re: Make Forth Great Again! minforth@arcor.de - 2017-02-16 01:00 -0800
    Re: Make Forth Great Again! Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-02-16 06:21 -0600
      Re: Make Forth Great Again! john <anon@example.com> - 2017-02-16 15:45 +0000
        Re: Make Forth Great Again! Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-02-16 10:12 -0600
          Re: Make Forth Great Again! Alex <alex@rivadpm.com> - 2017-02-16 16:36 +0000
            Re: Make Forth Great Again! Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-02-16 12:03 -0600
              Re: Make Forth Great Again! john <anon@example.com> - 2017-02-16 23:08 +0000
              Re: Make Forth Great Again! gavino himself <jackvanc3@gmail.com> - 2017-03-14 05:08 -0700
    Re: Make Forth Great Again! Whammo <sidciavic@gmail.com> - 2017-02-16 08:14 -0800
    Re: Make Forth Great Again! Igor Maznitsa <rrg4400@gmail.com> - 2017-02-16 13:43 -0800
      Re: Make Forth Great Again! Elliott Chapin <elliott.chapin@gmail.com> - 2017-02-17 07:26 -0800
    Re: Make Forth Great Again! mentificium@gmail.com - 2017-02-16 15:22 -0800
    Re: Make Forth Great Again! Brad Eckert <hwfwguy@gmail.com> - 2017-03-03 13:31 -0800
    Re: Make Forth Great Again! Wolf Wejgaard <wejgaard@holonforth.com> - 2017-03-10 01:10 -0800
      Re: Make Forth Great Again! JUERGEN <epldfpga@aol.com> - 2017-03-10 09:33 -0800
        Re: Make Forth Great Again! Wolf Wejgaard <wejgaard@holonforth.com> - 2017-03-12 09:00 -0700
          Re: Make Forth Great Again! stephen@mpeforth.com (Stephen Pelc) - 2017-03-12 20:50 +0000
          Re: Make Forth Great Again! rickman <gnuarm@gmail.com> - 2017-03-12 19:19 -0400
      Re: Make Forth Great Again! Cecil Bayona <cbayona@cbayona.com> - 2017-03-10 13:59 -0600
        Re: Make Forth Great Again! Wolf Wejgaard <wejgaard@holonforth.com> - 2017-03-11 01:14 -0800
    Re: Make Forth Great Again! polymorph self <jackvanc3@gmail.com> - 2017-03-10 14:20 -0800

Page 1 of 3  [1] 2 3  Next page →


#54868 — Make Forth Great Again!

Fromdjc <ciesinger@gmx.net>
Date2017-02-15 13:47 -0800
SubjectMake Forth Great Again!
Message-ID<05c5056b-c7bb-40fb-91ea-36d35d44f033@googlegroups.com>
In the 70ies, Forth was absolute top, leading edge, lots of features and capabilities missing elsewhere, such as
* self compiling
* multitasking
* interpreter AND compiler
* vectored I/O
* create-does to give user data types a behaviour
* fast AND small
* internal DSLs (domain specific languages)

Now today, other languages have taken the technical lead, Haskell, Ruby etc. These keep impressing people with Lambdas, Closures, modifiable class memberships, effective protection mechanisms etc.

Ok, so back to the drawing board and bringing up crazy new capabilities which no other language can do...

That is not about copy-catting features like lambdas and closures (some attempts were seen here), but bringing in novelty.

Why not have easy defining and training words for neural net elements? Why not use the multitasker for a pulsed and parallel neural net? Why not come up with something totally crazy and unseen?

   Daniel

[toc] | [next] | [standalone]


#54869

FromAlex <alex@rivadpm.com>
Date2017-02-15 22:34 +0000
Message-ID<o82kua$plg$1@dont-email.me>
In reply to#54868
On 2/15/2017 21:47, djc wrote:
> In the 70ies, Forth was absolute top, leading edge, lots of features
> and capabilities missing elsewhere, such as * self compiling *
> multitasking * interpreter AND compiler * vectored I/O * create-does
> to give user data types a behaviour * fast AND small * internal DSLs
> (domain specific languages)
>
> Now today, other languages have taken the technical lead, Haskell,
> Ruby etc. These keep impressing people with Lambdas, Closures,
> modifiable class memberships, effective protection mechanisms etc.
>
> Ok, so back to the drawing board and bringing up crazy new
> capabilities which no other language can do...
>
> That is not about copy-catting features like lambdas and closures
> (some attempts were seen here), but bringing in novelty.
>
> Why not have easy defining and training words for neural net
> elements? Why not use the multitasker for a pulsed and parallel
> neural net? Why not come up with something totally crazy and unseen?
>
> Daniel
>

You're asking Forth to fix a problem you haven't defined. That's a bit 
backwards.

I like to think Forth made IoT possible, and that there's opportunity 
there again. Fast and small DSLs.

-- 
Alex

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


#54870

From"Elizabeth D. Rather" <erather@forth.com>
Date2017-02-15 13:11 -1000
Message-ID<T9adnTkGJLGWfTnFnZ2dnUU7-cPNnZ2d@supernews.com>
In reply to#54868
On 2/15/17 11:47 AM, djc wrote:
> In the 70ies, Forth was absolute top, leading edge, lots of features and capabilities missing elsewhere, such as
> * self compiling
> * multitasking
> * interpreter AND compiler
> * vectored I/O
> * create-does to give user data types a behaviour
> * fast AND small
> * internal DSLs (domain specific languages)
>
> Now today, other languages have taken the technical lead, Haskell, Ruby etc. These keep impressing people with Lambdas, Closures, modifiable class memberships, effective protection mechanisms etc.
>
> Ok, so back to the drawing board and bringing up crazy new capabilities which no other language can do...
>
> That is not about copy-catting features like lambdas and closures (some attempts were seen here), but bringing in novelty.
>
> Why not have easy defining and training words for neural net elements? Why not use the multitasker for a pulsed and parallel neural net? Why not come up with something totally crazy and unseen?

All of the innovations on your list were developed under direct 
stimulation to solve application-oriented requirements (i.e., not by 
computer scientists looking for whizzy features). If a Forth programmer 
(or group of Forthers) were tasked with developing a neural net 
application they'd doubtless come up with a terrific Forthish approach. 
In fact, over the years since the 70's Forthers have developed a lot of 
good tools, such as truly interactive cross-compilers, ways to use the 
multitasker to drastically reduce power requirements in battery-operated 
devices, etc. These haven't received much publicity, and Forth's market 
recognition has suffered commensurately.

What is needed here is not more programming creativity, but for 
individuals and companies who are actually doing innovative and useful 
stuff in Forth to make it known by writing about it for the sites and 
publications other engineers read.

Cheers,
Elizabeth

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

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


#54936

Fromhughaguilar96@gmail.com
Date2017-02-17 10:54 -0800
Message-ID<3216eccf-5879-431e-9616-2af14d60a734@googlegroups.com>
In reply to#54870
On Wednesday, February 15, 2017 at 4:11:12 PM UTC-7, Elizabeth D. Rather wrote:
> What is needed here is not more programming creativity, but for 
> individuals and companies who are actually doing innovative and useful 
> stuff in Forth to make it known by writing about it for the sites and 
> publications other engineers read.

This quote really sums up your entire approach to Forth. You are opposed to "programming creativity" and you are in favor of salespeople (yourself) writing about Forth on websites.

You are a truly stupid person! You don't understand that having disparate parts of a program use the same global variables is a bad idea because one part of the program will clobber the global variables that another part of the program assumes to still be valid.

On Friday, February 10, 2017 at 1:33:17 AM UTC-7, Alex wrote:
> On 2/9/2017 22:36, hughaguilar96@gmail.com wrote:
> > On Thursday, February 9, 2017 at 1:56:25 AM UTC-7, Alex wrote:
> >> On 2/9/2017 06:39, hughaguilar96@gmail.com wrote:
> >>> ANS-Forth actually has several problems that come from using the
> >>> same memory for different things. This has been discussed
> >>> before:
> >>> https://groups.google.com/forum/#!topic/comp.lang.forth/uGAKvs8baQk%5B26-50%5D
> >>>
> >>>
> >>>
> On Friday, December 9, 2016 at 8:11:08 AM UTC-7, hughag...@gmail.com
> >>> wrote:
> >>>> On Thursday, December 8, 2016 at 11:23:05 PM UTC-7,
> >>>> hughag...@gmail.com wrote:
> >>>>> ANS-Forth is confusing! I was testing my words under VFX just
> >>>>> now and came to this:
> >>>>>
> >>>>> 12345.6789e engineering  ok-2 type 12.345679e32 ok
> >>>>>
> >>>>> WTF??? Does my code have a bug??? Then I tried this:
> >>>>>
> >>>>> 12345.6789e engineering type 12.345679e3  ok
> >>>>>
> >>>>> This works. I realized then that the problem was not in my
> >>>>> code, it was in ANS-Forth --- the outer-interpreter uses the
> >>>>> same memory location for multiple purposes --- my
> >>>>> <SCIENTIFIC> is using the buffer that <# #> uses, and this
> >>>>> buffer gets clobbered by the outer-interpreter before the
> >>>>> TYPE gets done on the next line.
> >>
> >> Yes, your code has a bug, since the behaviour you're describing is
> >>  covered by the standard. ... It's a bug, since your <SCIENTIFIC>
> >> word doesn't work.
> >
> > There is no bug in my <SCIENTIFIC> --- the ANS-Forth cult's strategy
> > seems to be repeatedly to denounce my novice package as having bugs
> > without offering any evidence --- this is so ANS-Forth programmers
> > won't use my STRING-STACK.4TH etc. because they believe that the
> > whole package is full of bugs, and they continue using PAD etc.
> > instead because that is "standard."
> >
> 
> Am I to assume that all your code is bug-free, even when its author says 
> it doesn't work?
> 
> -- 
> Alex

The problem here is that <# ... #> uses a global variable --- it may or may not return the same address every time --- the ANS-Forth document (3.3.3.6) says:
--------------------------------------------------------------------------------
The previous contents of the regions identified by WORD and #> may be invalid after 
each use of these words. Further, the regions returned by WORD and #> may overlap in 
memory. Consequently, use of one of these words can corrupt a region returned earlier 
by a different word. The other words that construct pictured numeric output strings 
(<#, #, #S, and HOLD) may also modify the contents of these regions. Words that 
display numbers may be implemented using pictured numeric output words. Consequently, . (dot), .R, .S, ?, D., D.R, U., and U.R could also corrupt the regions.
--------------------------------------------------------------------------------

That is stupid!!! Charles Moore did this because in the 1970s because he was working with computers that had extreme memory shortages and every byte counted --- also, this was typical 1970s computer-science, and is the reason why programs in the 1970s were pretty small --- also, he got kicked out of Forth Inc. in 1982 so he didn't have a chance to fix these problems.

In my novice-package I have STRING-STACK.4TH --- this should have been put in the ANS-Forth standard in 1994, but it is too late now --- I also have <CSTR ... CSTR> that also allows nested usage and/or repeated usage.

But, of course, you dismiss my novice-package by saying: 
"What is needed here is not more programming creativity."

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


#54938

FromCecil Bayona <cbayona@cbayona.com>
Date2017-02-17 13:09 -0600
Message-ID<o87hlk$bmc$1@dont-email.me>
In reply to#54936
On 2/17/2017 12:54 PM, hughaguilar96@gmail.com wrote:
> On Wednesday, February 15, 2017 at 4:11:12 PM UTC-7, Elizabeth D. Rather wrote:
>> What is needed here is not more programming creativity, but for
>> individuals and companies who are actually doing innovative and useful
>> stuff in Forth to make it known by writing about it for the sites and
>> publications other engineers read.
>
> This quote really sums up your entire approach to Forth. You are opposed to "programming creativity" and you are in favor of salespeople (yourself) writing about Forth on websites.
>
> You are a truly stupid person! You don't understand that having disparate parts of a program use the same global variables is a bad idea because one part of the program will clobber the global variables that another part of the program assumes to still be valid.
>

I mentioned before that a lot of the experts here have no idea what 
re-entrant code is or why one would use it, or what recursive capable 
code is, and I go a lot of some very not nice replies, some on my email.

You will never win an argument here, too many hateful snowflakes that 
want to argue for arguments sake and care little for merits.

All this bickering is getting old soon it will be time to give this list 
rest for a year or so and see who ends dropping out or dead. Not that I 
wish anyone here to drop dead, instead I wish that they live a very long 
life and that they get what they truly deserve. That is a lot scarier.

-- 
Cecil - k5nwa

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


#54943

Fromminforth@arcor.de
Date2017-02-17 13:55 -0800
Message-ID<ac99dc22-49f7-4e0e-b9c3-c69366a1eb4e@googlegroups.com>
In reply to#54938
Am Freitag, 17. Februar 2017 20:09:25 UTC+1 schrieb Cecil - k5nwa:
> On 2/17/2017 12:54 PM, hughaguilar96@gmail.com wrote:
> > On Wednesday, February 15, 2017 at 4:11:12 PM UTC-7, Elizabeth D. Rather wrote:
> >> What is needed here is not more programming creativity, but for
> >> individuals and companies who are actually doing innovative and useful
> >> stuff in Forth to make it known by writing about it for the sites and
> >> publications other engineers read.
> >
> > This quote really sums up your entire approach to Forth. You are opposed to "programming creativity" and you are in favor of salespeople (yourself) writing about Forth on websites.
> >
> > You are a truly stupid person! You don't understand that having disparate parts of a program use the same global variables is a bad idea because one part of the program will clobber the global variables that another part of the program assumes to still be valid.
> >
> 
> I mentioned before that a lot of the experts here have no idea what 
> re-entrant code is or why one would use it, or what recursive capable 
> code is, and I go a lot of some very not nice replies, some on my email.
> 
> You will never win an argument here, too many hateful snowflakes that 
> want to argue for arguments sake and care little for merits.
> 
> All this bickering is getting old soon it will be time to give this list 
> rest for a year or so and see who ends dropping out or dead. Not that I 
> wish anyone here to drop dead, instead I wish that they live a very long 
> life and that they get what they truly deserve. That is a lot scarier.
> 
> -- 
> Cecil - k5nwa

I dont Count me in, Having worked my Share in Prolog language

in c.l.forth i just ignore Posts form certain People. Reading Their stuff would mean wasting my own precious time. (like fighting this darned spellchecker...

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


#54950

Fromhughaguilar96@gmail.com
Date2017-02-17 16:37 -0800
Message-ID<6b9d1e5a-dcae-4345-b195-477bf91e5697@googlegroups.com>
In reply to#54943
On Friday, February 17, 2017 at 2:55:47 PM UTC-7, minf...@arcor.de wrote:
> I dont Count me in, Having worked my Share in Prolog language
> 
> in c.l.forth i just ignore Posts form certain People. Reading Their stuff would mean wasting my own precious time. (like fighting this darned spellchecker...

This is Marcel Hendrix.

Here is an example of him posting my code on c.l.f. with my name removed from the copyright notice --- later on he admitted that he didn't know what the code did.

https://groups.google.com/forum/#!topic/comp.lang.forth/wP5nw1ClzsM%5B1-25%5D

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


#54952

From"HAA" <someone@microsoft.com>
Date2017-02-18 11:54 +1100
Message-ID<o885tr$43p$1@gioia.aioe.org>
In reply to#54870
Elizabeth D. Rather wrote:
> ...
> What is needed here is not more programming creativity, but for
> individuals and companies who are actually doing innovative and useful
> stuff in Forth to make it known by writing about it for the sites and
> publications other engineers read.
>
> Cheers,
> Elizabeth

Seems to me ANS and 200x are reaping exactly what they have sown
and planting more of the same.


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


#54953

Fromhughaguilar96@gmail.com
Date2017-02-17 18:19 -0800
Message-ID<d6ac4a54-02b0-497b-aa30-7984cf7b4053@googlegroups.com>
In reply to#54952
On Friday, February 17, 2017 at 5:53:21 PM UTC-7, HAA wrote:
> Elizabeth D. Rather wrote:
> > ...
> > What is needed here is not more programming creativity, but for
> > individuals and companies who are actually doing innovative and useful
> > stuff in Forth to make it known by writing about it for the sites and
> > publications other engineers read.
> >
> > Cheers,
> > Elizabeth
> 
> Seems to me ANS and 200x are reaping exactly what they have sown
> and planting more of the same.

Fertilizing it well, too!

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


#54955

Fromhughaguilar96@gmail.com
Date2017-02-17 19:27 -0800
Message-ID<c788afe4-e0de-4405-a812-2eb7ab1d70a6@googlegroups.com>
In reply to#54953
On Friday, February 17, 2017 at 7:19:39 PM UTC-7, hughag...@gmail.com wrote:
> On Friday, February 17, 2017 at 5:53:21 PM UTC-7, HAA wrote:
> > Elizabeth D. Rather wrote:
> > > ...
> > > What is needed here is not more programming creativity, but for
> > > individuals and companies who are actually doing innovative and useful
> > > stuff in Forth to make it known by writing about it for the sites and
> > > publications other engineers read.
> > >
> > > Cheers,
> > > Elizabeth
> > 
> > Seems to me ANS and 200x are reaping exactly what they have sown
> > and planting more of the same.
> 
> Fertilizing it well, too!

Note also that Elizabeth Rather is only in favor of "individuals and companies who are actually doing innovative and useful stuff in Forth" when they support ANS-Forth --- she doesn't like it when I mention the MiniForth at Testra --- she tells a lot of big lies, claiming that it was a failure and I got fired.

She pretends that she has inside information about Testra despite the fact that they don't consider her to be their peer any more than I do. None of the people doing innovative and useful stuff in Forth consider her to be their peer. She has spent decades on c.l.f. posting code snippets copied directly out of the "Starting Forth" book --- she is a sales clown.

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


#55765

Fromgavino himself <jackvanc3@gmail.com>
Date2017-03-14 05:06 -0700
Message-ID<7212a92c-725e-49d6-81fc-9df5a6729513@googlegroups.com>
In reply to#54870
On Wednesday, February 15, 2017 at 6:11:12 PM UTC-5, Elizabeth D. Rather wrote:
> On 2/15/17 11:47 AM, djc wrote:
> > In the 70ies, Forth was absolute top, leading edge, lots of features and capabilities missing elsewhere, such as
> > * self compiling
> > * multitasking
> > * interpreter AND compiler
> > * vectored I/O
> > * create-does to give user data types a behaviour
> > * fast AND small
> > * internal DSLs (domain specific languages)
> >
> > Now today, other languages have taken the technical lead, Haskell, Ruby etc. These keep impressing people with Lambdas, Closures, modifiable class memberships, effective protection mechanisms etc.
> >
> > Ok, so back to the drawing board and bringing up crazy new capabilities which no other language can do...
> >
> > That is not about copy-catting features like lambdas and closures (some attempts were seen here), but bringing in novelty.
> >
> > Why not have easy defining and training words for neural net elements? Why not use the multitasker for a pulsed and parallel neural net? Why not come up with something totally crazy and unseen?
> 
> All of the innovations on your list were developed under direct 
> stimulation to solve application-oriented requirements (i.e., not by 
> computer scientists looking for whizzy features). If a Forth programmer 
> (or group of Forthers) were tasked with developing a neural net 
> application they'd doubtless come up with a terrific Forthish approach. 
> In fact, over the years since the 70's Forthers have developed a lot of 
> good tools, such as truly interactive cross-compilers, ways to use the 
> multitasker to drastically reduce power requirements in battery-operated 
> devices, etc. These haven't received much publicity, and Forth's market 
> recognition has suffered commensurately.
> 
> What is needed here is not more programming creativity, but for 
> individuals and companies who are actually doing innovative and useful 
> stuff in Forth to make it known by writing about it for the sites and 
> publications other engineers read.
> 
> Cheers,
> Elizabeth
> 
> -- 
> Elizabeth R. Conklin
> FORTH, Inc.
> 6080 Center Drive, Suite 600
> Los Angeles, CA  90045
> USA

and some web tools for e commerce
and maybe a forth only desktop pc with a chrome like browser

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


#54873

FromJulian Fondren <julian.fondren@gmail.com>
Date2017-02-15 15:51 -0800
Message-ID<1b59b098-da7f-4c67-8381-26a014e2992c@googlegroups.com>
In reply to#54868
On Wednesday, February 15, 2017 at 3:47:18 PM UTC-6, djc wrote:
>
> Ok, so back to the drawing board and bringing up crazy new capabilities which no other language can do...
>

If Forth has nothing to offer but novelty, then once you have a novel feature,
your pitch becomes "hey check out this language that has nothing to offer except
this cool th--hey!  HEY!  What are you doing?!  Stop copying that feature!
That feature is Forth IP!"  Naturally people would rather put in the work to
gain the benefits of the novel idea while retaining the use of languages that
they consider to already have value.

And in my experience as a recovered language dilettante, the easier to port
features are the actually better ones.

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


#54874

FromPaul Rubin <no.email@nospam.invalid>
Date2017-02-15 15:56 -0800
Message-ID<87r32znh3d.fsf@nightsong.com>
In reply to#54873
Julian Fondren <julian.fondren@gmail.com> writes:
> And in my experience as a recovered language dilettante, the easier to
> port features are the actually better ones.

The presence of hard-to-port features is what makes languages that have
them interesting.

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


#54875

FromJulian Fondren <julian.fondren@gmail.com>
Date2017-02-15 16:14 -0800
Message-ID<8dc01dea-cc69-4155-a1ec-238ef94571d0@googlegroups.com>
In reply to#54874
On Wednesday, February 15, 2017 at 5:56:40 PM UTC-6, Paul Rubin wrote:
> Julian Fondren <julian.fondren@gmail.com> writes:
> > And in my experience as a recovered language dilettante, the easier to
> > port features are the actually better ones.
> 
> The presence of hard-to-port features is what makes languages that have
> them interesting.

If you're writing code, you want good features vs. bad features, not
interesting vs. boring features. Examples of interesting but bad
features are Perl's contexts, lazy semantics, checked exceptions, and
"I hired an expert and he has no idea what this program does because
the author used <cool syntax-voiding feature>". You can turn Common
Lisp almost entirely into Clojure with read macros. You can get
automatic memoization and do work with infinite lists with lazy
semantics. You can code a function that does extra work to return a
list when the caller wants a list, and that skips all this work and
returns nothing when the caller doesn't use the return at all.

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


#54878

Fromlehs <skydda.barnen@gmail.com>
Date2017-02-16 02:03 -0800
Message-ID<59c931a4-5ede-48e6-a955-46eb20eb9df6@googlegroups.com>
In reply to#54875
Den torsdag 16 februari 2017 kl. 01:14:34 UTC+1 skrev Julian Fondren:
> On Wednesday, February 15, 2017 at 5:56:40 PM UTC-6, Paul Rubin wrote:
> > Julian Fondren <julian.fondren@gmail.com> writes:
> > > And in my experience as a recovered language dilettante, the easier to
> > > port features are the actually better ones.
> > 
> > The presence of hard-to-port features is what makes languages that have
> > them interesting.
> 
> If you're writing code, you want good features vs. bad features, not
> interesting vs. boring features. Examples of interesting but bad
> features are Perl's contexts, lazy semantics, checked exceptions, and
> "I hired an expert and he has no idea what this program does because
> the author used <cool syntax-voiding feature>". You can turn Common
> Lisp almost entirely into Clojure with read macros. You can get
> automatic memoization and do work with infinite lists with lazy
> semantics. You can code a function that does extra work to return a
> list when the caller wants a list, and that skips all this work and
> returns nothing when the caller doesn't use the return at all.

The greatness of Forth is the inherent idea and it hasn't changed. Of course it can be extended by all means, but will most probably not be the best solution to every new commercial need.

If you don't like Forth, don't make it to something else! Stop using it! 

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


#54880

Fromminforth@arcor.de
Date2017-02-16 02:55 -0800
Message-ID<a4ef3ca9-7794-454b-afec-101c82e626f9@googlegroups.com>
In reply to#54878
Am Donnerstag, 16. Februar 2017 11:03:47 UTC+1 schrieb lehs:
> Den torsdag 16 februari 2017 kl. 01:14:34 UTC+1 skrev Julian Fondren:
> > On Wednesday, February 15, 2017 at 5:56:40 PM UTC-6, Paul Rubin wrote:
> > > Julian Fondren <julian.fondren@gmail.com> writes:
> > > > And in my experience as a recovered language dilettante, the easier to
> > > > port features are the actually better ones.
> > > 
> > > The presence of hard-to-port features is what makes languages that have
> > > them interesting.
> > 
> > If you're writing code, you want good features vs. bad features, not
> > interesting vs. boring features. Examples of interesting but bad
> > features are Perl's contexts, lazy semantics, checked exceptions, and
> > "I hired an expert and he has no idea what this program does because
> > the author used <cool syntax-voiding feature>". You can turn Common
> > Lisp almost entirely into Clojure with read macros. You can get
> > automatic memoization and do work with infinite lists with lazy
> > semantics. You can code a function that does extra work to return a
> > list when the caller wants a list, and that skips all this work and
> > returns nothing when the caller doesn't use the return at all.
> 
> The greatness of Forth is the inherent idea and it hasn't changed. Of course it can be extended by all means, but will most probably not be the best solution to every new commercial need.
> 
> If you don't like Forth, don't make it to something else! Stop using it!

*grin*  after 40 years? definitely not.

I like Forth's conservativism. It hasn't changed since the 70s (forgetting micro add-ons in Forth200x) and is beloved like my gritted old but oh so handy swiss-army knife.

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


#54935

Fromhughaguilar96@gmail.com
Date2017-02-17 10:25 -0800
Message-ID<98fb8277-4e8a-4699-97a1-32195e1b97d8@googlegroups.com>
In reply to#54878
On Thursday, February 16, 2017 at 3:03:47 AM UTC-7, lehs wrote:
> The greatness of Forth is the inherent idea and it hasn't changed. Of course it can be extended by all means, but will most probably not be the best solution to every new commercial need.
> 
> If you don't like Forth, don't make it to something else! Stop using it!

I have heard this many times before --- that the greatness of Forth is that it hasn't changed since the 1970s --- well, I'm friends with a guy who owns a 1967 Pontiac Le Mans that he considers to be an "all-time great car" that will be worth $125,000 after he gets it fixed up...

I have also been told many times that I should stop trying to make Forth something that it isn't:

On Wednesday, February 1, 2017 at 3:31:46 PM UTC-7, Rod Pemberton wrote:
> On Wed, 1 Feb 2017 03:15:26 -0800 (PST)
> Mark Wills <markwills1970@gmail.com> wrote:
> 
> > On Wednesday, 1 February 2017 00:16:13 UTC, Rod Pemberton  wrote:
> > <snipped>
> > > Who exactly will use your <SWITCH construct?
> > > It's non-standard and there are other constructs which are widely
> > > available.  
> > <snipped>
> > 
> > It's written in standard ANS Forth, so that claim is wrong.
> 
> No, it's not wrong.  CASE is in the standard.  <SWITCH is not.  So,
> <SWITCH is non-standard.  Is it ANS Forth compliant?  Yes.
> 
> Rod Pemberton

What Rod Pemberton is saying is that Elizabeth Rather determines on a case-by-case basis what code is standard --- my <SWITCH may be ANS-Forth compliant, but it is not ANS-Forth standard because it hasn't been approved by Elizabeth Rather (she doesn't know what a jump-table is, which is why CASE became standard, and why my <SWITCH will never be approved).

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


#54937

FromCecil Bayona <cbayona@cbayona.com>
Date2017-02-17 12:55 -0600
Message-ID<o87grs$8cb$1@dont-email.me>
In reply to#54935
On 2/17/2017 12:25 PM, hughaguilar96@gmail.com wrote:
> On Thursday, February 16, 2017 at 3:03:47 AM UTC-7, lehs wrote:
>> The greatness of Forth is the inherent idea and it hasn't changed. Of course it can be extended by all means, but will most probably not be the best solution to every new commercial need.
>>
>> If you don't like Forth, don't make it to something else! Stop using it!
>
> I have heard this many times before --- that the greatness of Forth is that it hasn't changed since the 1970s --- well, I'm friends with a guy who owns a 1967 Pontiac Le Mans that he considers to be an "all-time great car" that will be worth $125,000 after he gets it fixed up...
>
> I have also been told many times that I should stop trying to make Forth something that it isn't:
>
> On Wednesday, February 1, 2017 at 3:31:46 PM UTC-7, Rod Pemberton wrote:
>> On Wed, 1 Feb 2017 03:15:26 -0800 (PST)
>> Mark Wills <markwills1970@gmail.com> wrote:
>>
>>> On Wednesday, 1 February 2017 00:16:13 UTC, Rod Pemberton  wrote:
>>> <snipped>
>>>> Who exactly will use your <SWITCH construct?
>>>> It's non-standard and there are other constructs which are widely
>>>> available.
>>> <snipped>
>>>
>>> It's written in standard ANS Forth, so that claim is wrong.
>>
>> No, it's not wrong.  CASE is in the standard.  <SWITCH is not.  So,
>> <SWITCH is non-standard.  Is it ANS Forth compliant?  Yes.
>>
>> Rod Pemberton
>
> What Rod Pemberton is saying is that Elizabeth Rather determines on a case-by-case basis what code is standard --- my <SWITCH may be ANS-Forth compliant, but it is not ANS-Forth standard because it hasn't been approved by Elizabeth Rather (she doesn't know what a jump-table is, which is why CASE became standard, and why my <SWITCH will never be approved).
>

So if switch is not on the Standard but written with ANSI words then 
it's non- standard code? Then no one can't add any of their own words 
because they are not ANSI standard code.

The things said here are so outrageously insane I keep wondering why I 
look at these post,  forever the optimist I keep hoping for a gem, but 
there are few here.

-- 
Cecil - k5nwa

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


#54940

Fromhughaguilar96@gmail.com
Date2017-02-17 11:31 -0800
Message-ID<a2d6bdbd-d6fa-4b76-8bc5-4eec64be1efc@googlegroups.com>
In reply to#54937
On Friday, February 17, 2017 at 11:55:40 AM UTC-7, Cecil - k5nwa wrote:
> On 2/17/2017 12:25 PM, hughaguilar96@gmail.com wrote:
> > On Thursday, February 16, 2017 at 3:03:47 AM UTC-7, lehs wrote:
> >> The greatness of Forth is the inherent idea and it hasn't changed. Of course it can be extended by all means, but will most probably not be the best solution to every new commercial need.
> >>
> >> If you don't like Forth, don't make it to something else! Stop using it!
> >
> > I have heard this many times before --- that the greatness of Forth is that it hasn't changed since the 1970s --- well, I'm friends with a guy who owns a 1967 Pontiac Le Mans that he considers to be an "all-time great car" that will be worth $125,000 after he gets it fixed up...
> >
> > I have also been told many times that I should stop trying to make Forth something that it isn't:
> >
> > On Wednesday, February 1, 2017 at 3:31:46 PM UTC-7, Rod Pemberton wrote:
> >> On Wed, 1 Feb 2017 03:15:26 -0800 (PST)
> >> Mark Wills <markwills1970@gmail.com> wrote:
> >>
> >>> On Wednesday, 1 February 2017 00:16:13 UTC, Rod Pemberton  wrote:
> >>> <snipped>
> >>>> Who exactly will use your <SWITCH construct?
> >>>> It's non-standard and there are other constructs which are widely
> >>>> available.
> >>> <snipped>
> >>>
> >>> It's written in standard ANS Forth, so that claim is wrong.
> >>
> >> No, it's not wrong.  CASE is in the standard.  <SWITCH is not.  So,
> >> <SWITCH is non-standard.  Is it ANS Forth compliant?  Yes.
> >>
> >> Rod Pemberton
> >
> > What Rod Pemberton is saying is that Elizabeth Rather determines on a case-by-case basis what code is standard --- my <SWITCH may be ANS-Forth compliant, but it is not ANS-Forth standard because it hasn't been approved by Elizabeth Rather (she doesn't know what a jump-table is, which is why CASE became standard, and why my <SWITCH will never be approved).
> >
> 
> So if switch is not on the Standard but written with ANSI words then 
> it's non- standard code? Then no one can't add any of their own words 
> because they are not ANSI standard code.
> 
> The things said here are so outrageously insane I keep wondering why I 
> look at these post,  forever the optimist I keep hoping for a gem, but 
> there are few here.
> 
> -- 
> Cecil - k5nwa

ANS-Forth is a cult --- all cults are like this --- every argument supporting the cult devolves into utter nonsense pretty quickly.

This is why I say that I'm killing ANS-Forth by writing ANS-Forth code --- if I wasn't writing ANS-Forth code, then the ANS-Forth cult would just sit contentedly on their throne and claim to be the leading experts for Forth who set the standard --- when I write ANS-Forth code however, I get these bizarre arguments against my code that actually just shine a spotlight on ANS-Forth's stupidity.

It just occurred to me that I could rewrite <# # #> etc. so that they work properly --- they would be based on <CSTR ... CSTR> --- I want to release the novice-package, but I keep thinking up these ideas to be added, which is why I keep delaying.

It would really be hilarious if I write <# #> in ANS-Forth and they work properly --- meanwhile, the <# #> in ANS-Forth may or may not return the same address every time, which is utterly stupid, but this is the "standard" implementation --- am I the only person who sees the humor in this? --- what is wrong with people that they don't find this to be funny?

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


#54949

Fromhughaguilar96@gmail.com
Date2017-02-17 16:32 -0800
Message-ID<586f7f27-1574-40d2-b3dd-3e0b1d430156@googlegroups.com>
In reply to#54940
On Friday, February 17, 2017 at 12:31:52 PM UTC-7, hughag...@gmail.com wrote:
> It just occurred to me that I could rewrite <# # #> etc. so that they work properly --- they would be based on <CSTR ... CSTR> --- I want to release the novice-package, but I keep thinking up these ideas to be added, which is why I keep delaying.
> 
> It would really be hilarious if I write <# #> in ANS-Forth and they work properly --- meanwhile, the <# #> in ANS-Forth may or may not return the same address every time, which is utterly stupid, but this is the "standard" implementation --- am I the only person who sees the humor in this? --- what is wrong with people that they don't find this to be funny?

Well, I rewrote <# #> etc. in ANS-Forth so they work properly. Here is a demonstration:

12345.6789e engineering  ok-2 
type 12.345679e3  ok

Previously, this didn't work because the ok-2 that VFX prints used the <# #> buffer and clobbered the string that my ENGINEERING produced. This was what happened:

12345.6789e engineering  ok-2 
type 12.345679e32 ok 

The '2' at the end is from the "ok-2" string that the VFX outer-interpreter produced.

I wrote this using <CSTR ... CSTR> --- note that Raimond Dragomir fixed a bad-design in <CSTR ... CSTR> for me --- my code here depends upon having that fix in place.

I could have written this using STRING-STACK.4TH instead --- for the most part, I recommend using STRING-STACK.4TH rather than <CSTR --- I used <CSTR however so that <# #> etc. would be available in NOVICE.4TH (where ENGINEERING etc. are defined) without requiring STRING-STACK.4TH to be loaded.

Anyway, here is the code (another "huge swath of gimcrack code" as Alex McDonald describes it):
-----------------------------------------------------------------------------------

: big-um/mod ( ud u -- remainder Dquotient )
    >r  2dup                            \ -- ud ud
    dup 0< if  -1  else  1  then        \ -- ud ud multiplier       \ this assures a positive intermediate value in M*/
    r@ m*/  2tuck                       \ -- Dquotient ud Dquotient
    r> 1 m*/                            \ -- Dquotient ud Dquotient*divisor
    d-                                  \ -- Dquotient Dremainder    
    abort" *** BIG-UM/MOD remainder overflowed ***" 
    -rot ;
    
here ," 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
1+ constant digits

: <# ( -- )
    <cstr ;
    
: hold ( char -- )    
    char+cstr ;
    
: sign ( n -- )    
    0< if  [char] - hold  then ;
    
: # ( ud1 -- ud2 )    
    base @  big-um/mod                  \ -- remainder Dquotient
    rot digits + c@ hold ;
    
: #s ( ud1 -- 0. )
    begin  #  2dup or 0= until ;
    
: #> ( ud -- adr cnt )    
    2drop                               \ --
    cstr> count                         \ -- adr cnt
    2dup reverse-str ;

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


Page 1 of 3  [1] 2 3  Next page →

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


csiph-web