Groups | Search | Server Info | Keyboard shortcuts | Login | Register


Groups > comp.lang.forth > #23685

Re: Moving 2/ from assembler to loadable extension

From Bernd Paysan <bernd.paysan@gmx.de>
Newsgroups comp.lang.forth
Subject Re: Moving 2/ from assembler to loadable extension
Date 2013-06-16 22:50 +0200
Organization 1&1 Internet AG
Message-ID <kpl8fa$r64$1@online.de> (permalink)
References <51b5de45$0$620$e4fe514c@dreader34.news.xs4all.nl> <2013Jun11.145241@mips.complang.tuwien.ac.at> <525c52fd-6658-485f-b409-c5534442ba64@2g2000yqr.googlegroups.com> <98SdnU-Gr6seUyDMnZ2dnUVZ_q2dnZ2d@supernews.com>

Show all headers | View raw


Andrew Haley wrote:

> Sieur de Bienville <morrimichael@gmail.com> wrote:
>> Out of curiosity, aside from the fact that the standard mandates
>> either floored or symmetric, is there any reason why / couldn't be
>> euclidian?
> 
> No, I don't suppose there is, but we'd need a pretty convincing
> argument.  At the time of ANS Forth almost no-one knew about Euclidan
> division, and I'm still not convinced there's much of a case for it.
> Forth, Inc practice was to treat all MOD operations as unsigned, and
> that still seems pretty sensible to me.

IIRC, Forth Inc.'s style is to have signed/unsigned division.  This makes a 
lot of sense, because it is really very rare to divide by a negative number, 
but it does occur more frequently to have some fractional scaling factor 
(between 0 and 1, represented as unsigned number), and you want to divide by 
that - and the other number can be signed.

> Truncated division is
> inferior to the others, but people still use it for the sake of a few
> cycles, so I guess in most cases people don't care.

IIRC, Windows 95 had some truncated divisions in the polygon filling 
algorithm, which resulted in polygons having off-by-one errors if the slope 
was negative.  Windows NT didn't have that problem...  It seems to be that 
quite some people accept awfully bad software ;-).

And Forth Inc's style is a few cycles faster than the built-in singed 
division on Intel, so if fastest is best, Forth Inc should have won.  They 
didn't, they didn't even convince the TC to allow this as an option, despite 
Elizabeth was the chair.

-- 
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://bernd-paysan.de/

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


Thread

Moving 2/ from assembler to loadable extension albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-06-10 14:10 +0000
  Re: Moving 2/ from assembler to loadable extension The Beez <the.beez.speaks@gmail.com> - 2013-06-10 08:12 -0700
    Re: Moving 2/ from assembler to loadable extension Coos Haak <chforth@hccnet.nl> - 2013-06-10 21:50 +0200
  Re: Moving 2/ from assembler to loadable extension anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-06-11 12:52 +0000
    Re: Moving 2/ from assembler to loadable extension Sieur de Bienville <morrimichael@gmail.com> - 2013-06-15 21:21 -0700
      Re: Moving 2/ from assembler to loadable extension Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-06-16 09:41 -0500
        Re: Moving 2/ from assembler to loadable extension Bernd Paysan <bernd.paysan@gmx.de> - 2013-06-16 22:50 +0200
          Re: Moving 2/ from assembler to loadable extension Coos Haak <chforth@hccnet.nl> - 2013-06-17 01:21 +0200
            Re: Moving 2/ from assembler to loadable extension Bernd Paysan <bernd.paysan@gmx.de> - 2013-06-17 13:51 +0200
              Re: Moving 2/ from assembler to loadable extension Coos Haak <chforth@hccnet.nl> - 2013-06-17 17:04 +0200
                Re: Moving 2/ from assembler to loadable extension Coos Haak <chforth@hccnet.nl> - 2013-06-17 17:07 +0200
                Re: Moving 2/ from assembler to loadable extension Bernd Paysan <bernd.paysan@gmx.de> - 2013-06-18 00:49 +0200
                Re: Moving 2/ from assembler to loadable extension anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-06-18 07:41 +0000
                Re: Moving 2/ from assembler to loadable extension "Elizabeth D. Rather" <erather@forth.com> - 2013-06-17 22:11 -1000
                Re: Moving 2/ from assembler to loadable extension Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-06-18 04:13 -0500
                Re: Moving 2/ from assembler to loadable extension Coos Haak <chforth@hccnet.nl> - 2013-06-18 13:37 +0200
                Re: Moving 2/ from assembler to loadable extension Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-06-18 09:42 -0500
                Re: Moving 2/ from assembler to loadable extension anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-06-18 15:51 +0000
                Re: Moving 2/ from assembler to loadable extension Coos Haak <chforth@hccnet.nl> - 2013-06-18 22:52 +0200
                Re: Moving 2/ from assembler to loadable extension albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-06-19 00:12 +0000
              Re: Moving 2/ from assembler to loadable extension albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-06-17 19:55 +0000
      Re: Moving 2/ from assembler to loadable extension anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-06-17 16:04 +0000
        Re: Moving 2/ from assembler to loadable extension Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-06-17 16:16 -0500
          Re: Moving 2/ from assembler to loadable extension albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-06-17 22:59 +0000
          Euclidian division (was: Moving 2/ from assembler ...) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-06-18 07:49 +0000
          Re: Moving 2/ from assembler to loadable extension rickman <gnuarm@gmail.com> - 2013-06-18 17:29 -0400
            Re: Moving 2/ from assembler to loadable extension Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-06-18 18:18 -0500
              Re: Moving 2/ from assembler to loadable extension rickman <gnuarm@gmail.com> - 2013-06-18 19:47 -0400
            Re: Moving 2/ from assembler to loadable extension albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-06-19 00:16 +0000
            Re: Moving 2/ from assembler to loadable extension Bernd Paysan <bernd.paysan@gmx.de> - 2013-06-19 15:09 +0200
              Re: Moving 2/ from assembler to loadable extension rickman <gnuarm@gmail.com> - 2013-06-19 17:55 -0400
          Euclidian Division (was: Moving 2/ from assembler ...) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-06-28 14:49 +0000
            Re: Euclidian Division Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-06-28 11:20 -0500
      Re: Moving 2/ from assembler to loadable extension Marc Olschok <nobody@nowhere.invalid> - 2013-06-19 23:11 +0000
  Re: Moving 2/ from assembler to loadable extension Pablo Hugo Reda <pabloreda@gmail.com> - 2013-06-18 17:05 -0700

csiph-web