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


Groups > comp.lang.forth > #53375

Re: f.) for Gorth

From anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups comp.lang.forth
Subject Re: f.) for Gorth
Date 2016-12-16 08:10 +0000
Organization Institut fuer Computersprachen, Technische Universitaet Wien
Message-ID <2016Dec16.091052@mips.complang.tuwien.ac.at> (permalink)
References (5 earlier) <_O2dnbK3V5P958_FnZ2dnUU7-IvNnZ2d@supernews.com> <2016Dec15.133627@mips.complang.tuwien.ac.at> <36GdneKTusQjBs_FnZ2dnUU7-Y_NnZ2d@supernews.com> <2016Dec15.153114@mips.complang.tuwien.ac.at> <xrGdnQ2zzu_MY8_FnZ2dnUU7-I_NnZ2d@supernews.com>

Show all headers | View raw


Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
>> Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>>>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
>>>> http://forth-standard.org/standard/float/Ftilde
>>>
>>>I know what F~ is, and I don't much like it either.  I don't know what
>>>F~ has to do with dogmatism, though.  I suppose it reduces the number
>>>of words in the standard, but having a single word do three different
>>>jobs doesn't fit with any Forth dogma I have ever come across: quite
>>>the reverse.
>> 
>> There is a "minimize the number of words" dogma around, and especially
>> in standardization some poeple put much weight in it, arguing for an
>> interface that's more complex to use and/or to implement because it
>> has fewer words than the simpler (to use and/or implement) interface.
>
>It's a matter of degree, I suppose.  Taken to extremes (as in F~) it
>becomes absurd.
>
>But, to be generous, I can understand people with very small systems
>wanting F~

I don't.  Why would a small system want F~ rather than the simpler
component words?

Here's the implementation of F~ in Gforth:

: f~abs ( r1 r2 r3 -- flag ) \ gforth
    \G Approximate equality with absolute error: |r1-r2|<r3.
    frot frot f- fabs fswap f< ;

: f~rel ( r1 r2 r3 -- flag ) \ gforth
    \G Approximate equality with relative error: |r1-r2|<r3*|r1+r2|.
	frot frot fover fabs fover fabs f+ frot frot
	f- fabs frot frot f* f< ;

: f~ ( r1 r2 r3 -- flag ) \ float-ext f-proximate
    \G ANS Forth medley for comparing r1 and r2 for equality: r3>0:
    \G @code{f~abs}; r3=0: bitwise comparison; r3<0: @code{fnegate f~rel}.
    fdup f0=
    IF \ bitwise comparison
	fp@ float+ 1 floats over float+ over str=
	fdrop fdrop fdrop
	EXIT
    THEN
    fdup f0>
    IF
	f~abs
    ELSE
	fnegate f~rel
    THEN ;

The implementation in VFX (Ndp387.fth) inlines F~ABS and F~REL, and
uses a different implementation for r3=0, but is not any simpler.
SwiftForth (fpmath.f) also inlines F~ABS and F~REL, and uses F= for
the r3=0 case (which is correct for SwiftForth because it does not
have -0e).

All of these systems have F=, and F0= (both not standardized), and use
these words for implementing F~.

Do you know of a significantly simpler implementation of F~?  If not,
standardizing F=, F~ABS and F~REL would have been a better solution to
standardizing F~ (and would have allowed small systems to implement
only a subset of these words); but that would have run counter to
dogma of minimizing the number of words, so we got F~.

>>>> Sure, it's ok to have an opinion even if you cannot support it with
>>>> arguments, but such opinions have zero weight with me; and I get
>>>> pretty annoyed if such an opinion is presented as if it had the same
>>>> weight as a well-argued technical argument.
>>>
>>>Very well, but aesthetic considerations are an important part of
>>>computer programming.
>> 
>> That may be the case, but if two programmers disagree on aesthetics,
>> they should find technical arguments supporting their case or shut up.
>> After all, de gustibus non est disputandum.
>
>But that is to presume that any question which cannot in principle be
>answered in a definite and indisputable way is not worth discussing.

No, there can be objective arguments for several sides of the issue,
and it's worth discussing and weighing those, and maybe look for more
technical arguments, in order to make the final decision.

But if the only argument you have is "I don't like ...", "I am not a
fan of ...", or the like, and if others disagree, and also have only
subjective reasons, then yes, this is not worth discussing.  What
would you base the discussion on, after all?

>If we were all to take that view we'd miss a great deal of what is
>important and interesting.  IMO.

Such as?

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

Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

f.) for Gorth josv@planet.nl - 2016-12-06 03:40 -0800
  Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-06 15:48 +0100
  Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-06 17:59 +0000
    Re: f.) for Gorth josv@planet.nl - 2016-12-06 13:17 -0800
      Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-07 11:11 +0000
        Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-07 06:11 -0800
          Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-07 17:50 +0000
        Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-07 15:23 +0100
          Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-08 16:18 +0000
        Re: f.) for Gorth josv@planet.nl - 2016-12-07 06:46 -0800
          Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-07 17:41 +0000
  Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-06 10:34 -0800
    Re: f.) for Gorth josv@planet.nl - 2016-12-09 12:11 -0800
      Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-23 13:23 +1100
    Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-15 15:42 -0800
  Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-07 13:06 +1100
    Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-06 18:32 -0800
      Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-07 12:41 +0100
        Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-07 19:49 -0800
          Re: f.) for Gorth Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-12-08 08:12 +0000
            Re: f.) for Gorth Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2016-12-08 18:53 -0500
              Re: f.) for Gorth Alex <alex@rivadpm.com> - 2016-12-09 00:01 +0000
                Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-09 12:17 +0100
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-09 13:01 +0000
              Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-09 11:19 +1100
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-08 22:23 -0800
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-09 07:11 -0800
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-20 22:40 -0800
                Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-20 23:59 -0800
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-21 21:17 -0800
                Re: f.) for Gorth The Beez <the.beez.speaks@gmail.com> - 2016-12-13 08:51 -0800
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-09 12:47 +0000
                Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-10 11:54 +1100
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-09 17:28 -0800
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-09 18:20 -0800
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-10 14:26 +0000
                Re: f.) for Gorth The Beez <the.beez.speaks@gmail.com> - 2016-12-13 09:14 -0800
                Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-13 19:24 +0100
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-14 07:29 -0600
                Re: f.) for Gorth Hans Bezemer <the.beez.speaks@gmail.com> - 2016-12-14 18:29 +0100
                Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-14 10:13 -0800
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-15 03:45 -0600
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-15 10:42 +0000
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-15 05:11 -0600
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-15 12:36 +0000
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-15 07:33 -0600
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-15 14:31 +0000
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-15 14:34 -0600
                Re: f.) for Gorth Paul Rubin <no.email@nospam.invalid> - 2016-12-15 16:20 -0800
                Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-15 16:46 -0800
                Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-17 09:23 -0800
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-19 02:56 -0600
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-16 08:10 +0000
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-16 10:00 -0600
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-18 10:32 +0000
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-19 03:22 -0600
                Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-16 14:14 +0100
                Re: f.) for Gorth Bernd Paysan <bernd@net2o.de> - 2016-12-19 19:41 +0000
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-20 03:02 -0600
                Re: f.) for Gorth mhx@iae.nl - 2016-12-20 01:27 -0800
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-20 12:35 +0000
                Re: f.) for Gorth Charles Montgomery <cgm@physics.utoledo.edu> - 2016-12-20 21:23 -0500
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-21 07:29 +0000
                Re: f.) for Gorth Charles Montgomery <cgm@physics.utoledo.edu> - 2016-12-21 22:24 -0500
                Re: f.) for Gorth "David N. Williams" <williams@umich.edu> - 2016-12-22 08:10 -0500
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-22 17:39 +0000
                Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-15 12:53 +0100
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-15 05:59 -0600
                Re: f.) for Gorth "Robert L." <No_spamming@noWhere_7073.org> - 2017-01-03 16:15 +0000
                Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-14 17:06 +0000
                Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-18 10:58 +1100
                Re: f.) for Gorth Paul Rubin <no.email@nospam.invalid> - 2016-12-17 17:26 -0800
                Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-19 13:16 +1100
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-18 19:19 -0800
                Re: f.) for Gorth john <anon@example.com> - 2016-12-19 11:03 +0000
                Re: f.) for Gorth Mark Wills <markwills1970@gmail.com> - 2016-12-20 01:46 -0800
                Re: f.) for Gorth john <anon@example.com> - 2016-12-20 12:14 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-20 17:34 -0800
                Re: f.) for Gorth Paul Rubin <no.email@nospam.invalid> - 2016-12-18 19:25 -0800
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-18 19:45 -0800
                Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-22 11:32 +1100
                Re: f.) for Gorth Bernd Paysan <bernd@net2o.de> - 2017-01-03 19:33 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2017-01-03 22:13 -0800
                Re: f.) for Gorth Alex <alex@rivadpm.com> - 2017-01-04 23:03 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2017-01-06 22:52 -0800
                Re: f.) for Gorth Alex <alex@rivadpm.com> - 2017-01-07 22:45 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2017-01-07 17:23 -0800
                Re: f.) for Gorth Alex <alex@rivadpm.com> - 2017-01-08 09:13 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2017-01-08 17:10 -0800
                Re: f.) for Gorth Alex <alex@rivadpm.com> - 2017-01-09 10:22 +0000
                Re: f.) for Gorth stephen@mpeforth.com - 2017-01-08 07:00 -0800
                Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-05-20 14:09 +0200
                Re: f.) for Gorth Matthias Trute <matthias.trute@gmail.com> - 2017-01-11 01:14 -0800
    Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-07 12:26 +0100
      Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-08 10:21 +1100
        Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-20 15:45 +0100
          Re: f.) for Gorth Alex <alex@rivadpm.com> - 2016-12-20 15:33 +0000
          Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-22 11:37 +1100
            Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-22 14:19 +0100
              Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-23 12:11 +1100
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-22 17:49 -0800
                Re: f.) for Gorth "HAA" <someone@microsoft.com> - 2016-12-23 20:41 +1100
            Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-05-20 14:21 +0200
  Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-15 22:31 -0800
    Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-16 18:26 -0800
      Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-18 16:41 -0800
        Re: f.) for Gorth stephen@mpeforth.com - 2016-12-20 02:20 -0800
          Re: f.) for Gorth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-12-20 13:04 +0000
            Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-20 17:27 -0800
  Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-17 10:36 -0800
    Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-17 11:51 -0800
      Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-18 19:35 -0800
        Re: f.) for Gorth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-12-19 14:17 +0100
          Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-19 10:10 -0800
            Re: f.) for Gorth Alex <alex@rivadpm.com> - 2016-12-19 20:33 +0000
              Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-19 18:11 -0800
                Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-19 19:03 -0800
                Re: f.) for Gorth Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-12-20 08:10 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-20 18:05 -0800
                Re: f.) for Gorth  -  what is a number? Jan Coombs <jenfhaomndgfwutc@murmic.plus.com> - 2016-12-21 09:04 +0000
                Re: f.) for Gorth Alex <alex@rivadpm.com> - 2016-12-20 15:26 +0000
                Re: f.) for Gorth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-20 11:30 -0600
                Language stds (was Re: f.) for Gorth) Alex <alex@rivadpm.com> - 2016-12-20 19:49 +0000
                Re: Language stds (was Re: f.) for Gorth) john <anon@example.com> - 2016-12-20 20:06 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-20 17:52 -0800
                Re: f.) for Gorth Alex <alex@rivadpm.com> - 2016-12-21 13:47 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-21 20:46 -0800
                Re: f.) for Gorth Alex <alex@rivadpm.com> - 2016-12-22 14:33 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-22 07:06 -0800
                Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-22 07:21 -0800
                Re: f.) for Gorth Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2016-12-23 07:41 +0000
                Re: f.) for Gorth Alex <alex@rivadpm.com> - 2016-12-23 08:33 +0000
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-23 18:22 -0800
                Re: f.) for Gorth Julian Fondren <julian.fondren@gmail.com> - 2016-12-23 20:28 -0800
                Re: f.) for Gorth hughaguilar96@gmail.com - 2016-12-26 18:30 -0800
                Language stds (Re: f.) for Gorth) "HAA" <someone@microsoft.com> - 2016-12-24 12:12 +1100
                Re: Language stds (Re: f.) for Gorth) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-12-24 03:28 -0600
                Re: Language stds (Re: f.) for Gorth) "Elizabeth D. Rather" <erather@forth.com> - 2016-12-24 10:02 -0600
                Re: Language stds (Re: f.) for Gorth) hughaguilar96@gmail.com - 2016-12-24 16:13 -0800
                Re: Language stds (Re: f.) for Gorth) Alex <alex@rivadpm.com> - 2016-12-24 18:13 +0000
                Re: Language stds (Re: f.) for Gorth) "HAA" <someone@microsoft.com> - 2016-12-28 09:24 +1100
                Re: Language stds (Re: f.) for Gorth) "Elizabeth D. Rather" <erather@forth.com> - 2016-12-27 17:10 -0600
                Re: Language stds (Re: f.) for Gorth) hughaguilar96@gmail.com - 2016-12-27 22:58 -0800
                Re: Language stds (Re: f.) for Gorth) "HAA" <someone@microsoft.com> - 2016-12-29 10:12 +1100
                Re: Language stds (Re: f.) for Gorth) "Elizabeth D. Rather" <erather@forth.com> - 2016-12-29 17:03 -0800
                Re: Language stds (Re: f.) for Gorth) hughaguilar96@gmail.com - 2016-12-29 19:35 -0800
                Re: Language stds (Re: f.) for Gorth) Howerd <howerdo@yahoo.co.uk> - 2016-12-30 05:27 -0800
                Re: Language stds (Re: f.) for Gorth) hughaguilar96@gmail.com - 2016-12-30 19:11 -0800
                Re: Language stds (Re: f.) for Gorth) hughaguilar96@gmail.com - 2016-12-31 06:42 -0800

csiph-web