Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #52274
| From | alex <alex@rivadpm.com> |
|---|---|
| Newsgroups | comp.lang.forth |
| Subject | Re: 1 /STRING vs SNIP |
| Date | 2016-10-28 19:39 +0100 |
| Organization | A noiseless patient Spider |
| Message-ID | <nv05vm$q27$1@dont-email.me> (permalink) |
| References | (2 earlier) <bb53f5a9-6125-42c1-8b4c-dba291c6e192@googlegroups.com> <ceaae7df-633a-4637-8d31-b8e0b4c267ec@googlegroups.com> <22a588d0-5601-4b06-a205-33bad2f291c0@googlegroups.com> <nusu6c$s2l$1@dont-email.me> <6b60cf49-9aa2-41e4-a2ba-db54095f0b17@googlegroups.com> |
On 28/10/16 03:12, hughaguilar96@gmail.com wrote: > On Thursday, October 27, 2016 at 6:07:49 AM UTC-7, alex wrote: >> On 23/10/16 04:13, hughaguilar96@gmail.com wrote: >>> On Friday, October 21, 2016 at 3:49:55 AM UTC-7, trans wrote: >>>> P.S. I know what it is to feel like the outsider, having strong opinions that differ from the mainstream group. It can bw very frustrating! But chin up, I for one like these little lib. Why reinvent the wheel? >>> >>> I'm not reinventing the wheel. The memory-management system in string-stack.4th is my own invention. Nobody else has ever done anything like this. >>> >>> The history here is that Mark Wills suggested to me that I write a string-stack package that used the heap. My original plan was pretty simple --- every time that a string is duplicated (with DUP$ OVER$ etc.) I would ALLOCATE a new string and copy the old string to the new string --- this way, any changes made to one string won't affect the other string. >>> >>> This original plan is actually quite slow however, so it wasn't acceptable to me. My invention was the "unique" and "derivative" strings. A derivative string is just a reference to the unique string, so ALLOCATE is not necessary, and copying the string is not necessary. Only if the derivative string is going to change does it get converted into a unique string. Also, if a unique is going to change, then all of its derivatives get converted into uniques so they don't get affected. A lot of what you do with strings doesn't change them, so in many cases it is not necessary to convert derivatives into uniques. For example, printing out a string doesn't change it. >>> >>> I've never looked at any other string packages so I don't really know what they are doing, but I feel confident that my string-stack.4th is far superior to them --- I think up ideas, and they work --- nobody else is doing any thinking at all; I don't need to look at their stuff. >>> >> >> The technique is very well known. It even has a name; COW. Copy On Write. > > I had never heard of Copy On Write --- I looked it up right now though and it does seem to be pretty much the same as what I'm doing. > > If this is so "well known," why hasn't it ever been done in Forth before? > > The reason why this technique, and other good ideas, have never been done in Forth before is that ANS-Forth is the "Standard." There aren't going to be any good ideas in Forth-200x either, because Forth-200x is mandated to be 100% compatible with ANS-Forth, and because all of the committee members are appointed by Elizabeth Rather. > > The whole idea with Straight Forth is to escape from the dumb-as-dirt mentality that permeates Elizabeth Rather's toy language. I'm really never going to become an ANS-Forth or Forth-200x programmer --- that is just shameful --- that is like voluntarily signing up for the Special-Ed class. > You are confusing implementation with definition. It's a common problem in standards work; it's not the job of the standard to tell you how to do things. Straight Forth appears to do quite a bit of telling you how to do things. > There are a lot of good ideas in computer science. Quotations are one of them. This COW for strings is another one. There are others. I'm not saying that I can think up everything myself --- I'm saying that in Straight Forth good ideas will be made a part of the Standard. > You don't read widely enough. On several occasion you have claimed to have discovered or invented something, generally a technique or idea that has been know for many years.
Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
1 /STRING vs SNIP foxaudioresearch@gmail.com - 2016-10-18 19:31 -0700
Re: 1 /STRING vs SNIP Ron Aaron <rambamist@gmail.com> - 2016-10-19 07:24 +0300
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-19 07:52 +0000
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-19 16:58 -0700
Re: 1 /STRING vs SNIP "HAA" <someone@microsoft.com> - 2016-10-21 16:01 +1000
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-21 00:51 -0700
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-21 00:57 -0700
Re: 1 /STRING vs SNIP trans <transfire@gmail.com> - 2016-10-21 05:20 -0700
Re: 1 /STRING vs SNIP "HAA" <someone@microsoft.com> - 2016-10-22 00:25 +1000
Re: 1 /STRING vs SNIP trans <transfire@gmail.com> - 2016-10-21 09:13 -0700
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-21 16:24 +0000
Re: 1 /STRING vs SNIP albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-10-21 20:06 +0200
Re: 1 /STRING vs SNIP trans <transfire@gmail.com> - 2016-10-21 14:19 -0700
Re: 1 /STRING vs SNIP "HAA" <someone@microsoft.com> - 2016-10-22 13:46 +1000
Re: 1 /STRING vs SNIP stephen@mpeforth.com (Stephen Pelc) - 2016-10-22 11:34 +0000
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-22 13:49 +0000
Re: 1 /STRING vs SNIP "HAA" <someone@microsoft.com> - 2016-10-24 11:15 +1000
Re: 1 /STRING vs SNIP albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-10-24 03:01 +0200
Re: 1 /STRING vs SNIP "HAA" <someone@microsoft.com> - 2016-10-24 13:29 +1000
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-24 11:15 +0000
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-24 19:44 -0700
Re: 1 /STRING vs SNIP "HAA" <someone@microsoft.com> - 2016-10-29 11:17 +1000
Re: 1 /STRING vs SNIP Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-10-29 04:09 -0500
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-29 16:44 +0000
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-29 17:11 -0700
Re: 1 /STRING vs SNIP "HAA" <someone@microsoft.com> - 2016-10-31 19:11 +1100
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-31 08:47 +0000
Re: 1 /STRING vs SNIP trans <transfire@gmail.com> - 2016-10-21 03:49 -0700
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-22 20:02 -0700
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-22 20:13 -0700
Re: 1 /STRING vs SNIP trans <transfire@gmail.com> - 2016-10-22 21:09 -0700
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-23 18:36 -0700
Re: 1 /STRING vs SNIP alex <alex@rivadpm.com> - 2016-10-27 14:07 +0100
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-27 19:12 -0700
Re: 1 /STRING vs SNIP alex <alex@rivadpm.com> - 2016-10-28 19:39 +0100
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-28 20:26 -0700
Re: 1 /STRING vs SNIP foxaudioresearch@gmail.com - 2016-10-26 19:52 -0700
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-27 09:42 +0000
Re: 1 /STRING vs SNIP foxaudioresearch@gmail.com - 2016-10-27 06:46 -0700
Re: 1 /STRING vs SNIP stephen@mpeforth.com (Stephen Pelc) - 2016-10-28 07:31 +0000
Re: 1 /STRING vs SNIP jim <anon@example.com> - 2016-10-28 11:33 +0100
Re: 1 /STRING vs SNIP jasmijn Bonting <tessa.bonting@gmail.com> - 2016-10-28 04:09 -0700
Re: 1 /STRING vs SNIP stephen@mpeforth.com (Stephen Pelc) - 2016-10-28 12:41 +0000
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-28 16:50 +0000
Re: 1 /STRING vs SNIP Chris Curl <ccurl609@gmail.com> - 2016-10-28 10:59 -0700
Re: 1 /STRING vs SNIP anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-10-29 10:17 +0000
Re: 1 /STRING vs SNIP "HAA" <someone@microsoft.com> - 2016-10-19 20:19 +1000
Re: 1 /STRING vs SNIP foxaudioresearch@gmail.com - 2016-10-19 05:12 -0700
1 /STRING vs SNIP trans <transfire@gmail.com> - 2016-10-21 04:07 -0700
Re: 1 /STRING vs SNIP albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-10-21 15:50 +0200
Re: 1 /STRING vs SNIP hughaguilar96@gmail.com - 2016-10-25 16:38 -0700
Re: 1 /STRING vs SNIP "David N. Williams" <williams@umich.edu> - 2016-10-26 10:50 -0400
Re: 1 /STRING vs SNIP "David N. Williams" <williams@umich.edu> - 2016-10-26 10:53 -0400
Re: 1 /STRING vs SNIP albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2016-10-26 17:33 +0200
Re: 1 /STRING vs SNIP "David N. Williams" <williams@umich.edu> - 2016-10-27 10:16 -0400
Re: 1 /STRING vs SNIP Doug Hoffman <glidedog@gmail.com> - 2016-10-27 17:01 -0400
Re: 1 /STRING vs SNIP Coos Haak <htrofhc@gmail.com> - 2016-10-27 17:00 +0200
Re: 1 /STRING vs SNIP Hans Bezemer <the.beez.speaks@gmail.com> - 2016-10-22 12:25 +0200
csiph-web