Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #57642 > unrolled thread
| Started by | Alex <alex@rivadpm.com> |
|---|---|
| First post | 2017-04-20 15:02 +0100 |
| Last post | 2017-04-30 20:06 +0100 |
| Articles | 20 on this page of 34 — 9 participants |
Back to article view | Back to comp.lang.forth
ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-20 15:02 +0100
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-20 15:55 +0100
Re: ANN: WF32, a Windows 32 bit Forth "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-20 17:17 +0000
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-20 19:23 +0100
Re: ANN: WF32, a Windows 32 bit Forth "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-21 09:40 +0000
Re: ANN: WF32, a Windows 32 bit Forth josv@planet.nl - 2017-04-21 02:58 -0700
Re: ANN: WF32, a Windows 32 bit Forth "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-21 11:44 +0000
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-21 13:49 +0100
Re: ANN: WF32, a Windows 32 bit Forth josv@planet.nl - 2017-04-21 09:03 -0700
Re: ANN: WF32, a Windows 32 bit Forth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-04-20 19:22 +0200
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-20 19:19 +0100
Re: WF32, a Windows 32 bit Forth "HAA" <someone@microsoft.com> - 2017-04-21 13:44 +1000
Re: WF32, a Windows 32 bit Forth Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-04-21 22:45 -0400
Re: WF32, a Windows 32 bit Forth Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-04-21 22:50 -0400
Re: WF32, a Windows 32 bit Forth rickman <gnuarm@gmail.com> - 2017-04-22 00:57 -0400
Re: WF32, a Windows 32 bit Forth Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-04-22 23:32 -0400
Re: WF32, a Windows 32 bit Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-24 16:54 +0000
Re: WF32, a Windows 32 bit Forth rickman <gnuarm@gmail.com> - 2017-04-24 13:05 -0400
Re: WF32, a Windows 32 bit Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-25 07:26 +0000
Re: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-22 12:48 +0100
Re: ANN: WF32, a Windows 32 bit Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-24 13:59 +0000
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-24 16:41 +0100
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-29 19:13 +0100
Re: ANN: WF32, a Windows 32 bit Forth NN <november.nihal@gmail.com> - 2017-04-24 14:07 -0700
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-24 22:48 +0100
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-29 19:49 +0100
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-30 22:33 +0100
Re: ANN: WF32, a Windows 32 bit Forth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-04-30 12:20 +0200
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-30 12:00 +0100
Re: ANN: WF32, a Windows 32 bit Forth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-04-30 14:39 +0200
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-30 14:03 +0100
Re: ANN: WF32, a Windows 32 bit Forth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-04-30 19:51 +0200
Re: ANN: WF32, a Windows 32 bit Forth albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-04-30 20:03 +0200
Re: ANN: WF32, a Windows 32 bit Forth Alex <alex@rivadpm.com> - 2017-04-30 20:06 +0100
Page 1 of 2 [1] 2 Next page →
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-04-20 15:02 +0100 |
| Subject | ANN: WF32, a Windows 32 bit Forth |
| Message-ID | <odaesj$quo$1@dont-email.me> |
I've put my Windows Forth up on github at
https://github.com/alextangent/wf32
Licensed where possible under the 2 clause BSD
https://opensource.org/licenses/BSD-2-Clause
The system started life as a branch of Win32Forth. It is now pretty well
unrecognisable, but it has helped bootstrap WF32 into life.
. it's a complete bottom up rewrite
. it's an STC not an ITC;
. it doesn't do very many Window-ey things and is a console application;
. it has a very extensive and completely rewritten assembler that
supports 32 and 64 bit rather than the original 16 and 32 bit
. it is very documentation lite.
. and so on.
The original Win32Forth system was public domain. Although the basic
features of Win32Forth (for instance, meta compilation) and some of
its capabilities are employed in this code, all of the original
Win32Forth kernel, and much of the supporting code, have been completely
rewritten. Win32Forth was a very fat Forth. WF32 isn't.
Jim Schneider wrote the original assembler and licensed it under the
GPL/LGPL, but none of it is used in WF32.
As such, each file has either a BSD licence (see below) or a note
explaining the provenance; normally, that is was borrowed from the
public domain Win32Forth.
If there are any discrepancies or copyright issues, please contact me
at alex at rivadpm dot com and I will endeavour to correct the
licence, remove, or rewrite out, the disputed code.
Why change the licence from public domain to BSD? Partly because PD
really doesn't have any legal standing in UK law; a new version of a
public domain work will be copyright protected, even though the original
work is not. (It's even debatable that Tom Zimmer could put Win32Forth
into the public domain.) I am not a lawyer, but the 2 clause BSD licence
seems to be most appropriate in this case. It has no meaningful
restrictions beyond recognising copyright.
To install it, download and run REBUILD32.BAT. This builds WF32.EXE from
the kernel GKERNEL32.EXE, then recompiles the kernel code. If you make
any changes to the kernel or the meta compiler in the SRC/KERNEL
directory, then run REBUILD32.BAT again. (Take a backup of the
executables first.) If you make changes to files in SRC or SRC/ASM, run
EXTEND32.BAT instead.
The system implements most of Forth 2012 with the exception of some of
the string extension words like SUBSTITUTE and UNESCAPE; the BLOCK
wordset; and the float wordset.
It passes Gerry Jackson's HAYES tester (which I have included in the
distribution; it was from
https://github.com/gerryjackson/forth2012-test-suite/tree/master and I
claim no more than copying rights on that code. Two of the files have
been edited to support WF32 testing out of the box).
There is a float assembler, but the float support and the disassembler
has not yet been completed. The interface to Windows doesn't use the VFX
contributed code, but my own library and import functionality. The
console support is horrible; the cursor dashes around and it needs
rewritten.
Beyond a benchmark and the ANS tester, there aren't any demo programs. I
have several thousands of lines of more code that I will add as I'm
able, but my interests lie in compiler technology, so don't expect any
Soduku games. It generates some passable code, and has a few
optimisations built in;
. Does constant folding ( 1 1 + is compiled as 2 )
. Does tail call optimisation
. Does inlining on small words
CATCH will catch Windows errors. A common one is recompiling WF32.EXE
and getting
Building image wf32.exe
include src\extend32 fsave wf32 bye
^^^^
Error -311 in (evaluate): wf32 windows call error
The process cannot access the file because it is being used by another
process.
Windows won't let you write to a file that's being executed, so
terminate the other copies first.
To save your program as an executable, FSAVE <name>. This will produce a
full EXE file that you can run.
--
Alex
[toc] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-04-20 15:55 +0100 |
| Message-ID | <odahum$5om$1@dont-email.me> |
| In reply to | #57642 |
On 4/20/2017 15:02, Alex wrote: > I've put my Windows Forth up on github at > https://github.com/alextangent/wf32 > >... > I forgot to say; it uses recognizers. "a quoted and \"escaped\"string" recognizer a tick (for example 'dup) recognizer a ]] stuff to postpone [[ recognizer -- Alex
[toc] | [prev] | [next] | [standalone]
| From | "Rudy Velthuis" <newsgroups@rvelthuis.de> |
|---|---|
| Date | 2017-04-20 17:17 +0000 |
| Message-ID | <xn0koyots8h7uvy005@nntp.aioe.org> |
| In reply to | #57643 |
Alex wrote: > On 4/20/2017 15:02, Alex wrote: > > I've put my Windows Forth up on github at > > https://github.com/alextangent/wf32 > > > > ... > > > > I forgot to say; it uses recognizers. > > "a quoted and \"escaped\"string" recognizer > a tick (for example 'dup) recognizer > a ]] stuff to postpone [[ recognizer Pardon this newbie for asking: what is a recognizer (in this context)? -- Rudy Velthuis http://www.rvelthuis.de "A husband is what is left of the lover after the nerve has been extracted." -- Helen Rowland (1876-1950)
[toc] | [prev] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-04-20 19:23 +0100 |
| Message-ID | <odau4p$hma$1@dont-email.me> |
| In reply to | #57649 |
On 4/20/2017 18:17, Rudy Velthuis wrote: > Alex wrote: > >> On 4/20/2017 15:02, Alex wrote: >>> I've put my Windows Forth up on github at >>> https://github.com/alextangent/wf32 >>> >>> ... >>> >> >> I forgot to say; it uses recognizers. >> >> "a quoted and \"escaped\"string" recognizer >> a tick (for example 'dup) recognizer >> a ]] stuff to postpone [[ recognizer > > Pardon this newbie for asking: what is a recognizer (in this context)? > Recognizers are an experiment in having an extensible parser built into the Forth interpreter. The original idea is by Matthias Trute. Here's his paper on the subject http://amforth.sourceforge.net/pr/Recognizer-rfc-D.html. I am a big fan of this, as it fixes a significant number of problems with the traditional methods used. -- Alex
[toc] | [prev] | [next] | [standalone]
| From | "Rudy Velthuis" <newsgroups@rvelthuis.de> |
|---|---|
| Date | 2017-04-21 09:40 +0000 |
| Message-ID | <xn0kozrb11hjth001@nntp.aioe.org> |
| In reply to | #57657 |
Alex wrote: > On 4/20/2017 18:17, Rudy Velthuis wrote: > > Alex wrote: > > > > > On 4/20/2017 15:02, Alex wrote: > > > > I've put my Windows Forth up on github at > > > > https://github.com/alextangent/wf32 > > > > > > > > ... > > > > > > > > > > I forgot to say; it uses recognizers. > > > > >> "a quoted and \"escaped\"string" recognizer > >> a tick (for example 'dup) recognizer > >> a ]] stuff to postpone [[ recognizer > > > > Pardon this newbie for asking: what is a recognizer (in this > > context)? > > > > Recognizers are an experiment in having an extensible parser built > into the Forth interpreter. The original idea is by Matthias Trute. > Here's his paper on the subject > http://amforth.sourceforge.net/pr/Recognizer-rfc-D.html. I am a big > fan of this, as it fixes a significant number of problems with the > traditional methods used. Ah, thanks! -- Rudy Velthuis http://www.rvelthuis.de "They have computers, and they may have other weapons of mass destruction." -- Janet Reno, Us Attorney General, 02-27-98
[toc] | [prev] | [next] | [standalone]
| From | josv@planet.nl |
|---|---|
| Date | 2017-04-21 02:58 -0700 |
| Message-ID | <fd9a9a24-ec5a-4095-825c-60aa9c42e19f@googlegroups.com> |
| In reply to | #57657 |
Hi, When I getting into Forth it was easy to learn. Each word could be explained within 8 lines using a half side of an A4 page (portrait). Quite clear and understandable. It seems recognizers are beyond that capability. Jos On 20 april 2017 20:23:20 UTC+2 Alex wrote: > On 4/20/2017 18:17, Rudy Velthuis wrote: > > Alex wrote: > > > >> On 4/20/2017 15:02, Alex wrote: > >>> I've put my Windows Forth up on github at > >>> https://github.com/alextangent/wf32 > >>> > >>> ... > >>> > >> > >> I forgot to say; it uses recognizers. > >> > >> "a quoted and \"escaped\"string" recognizer > >> a tick (for example 'dup) recognizer > >> a ]] stuff to postpone [[ recognizer > > > > Pardon this newbie for asking: what is a recognizer (in this context)? > > > > Recognizers are an experiment in having an extensible parser built into > the Forth interpreter. The original idea is by Matthias Trute. Here's > his paper on the subject > http://amforth.sourceforge.net/pr/Recognizer-rfc-D.html. I am a big fan > of this, as it fixes a significant number of problems with the > traditional methods used. > > -- > Alex
[toc] | [prev] | [next] | [standalone]
| From | "Rudy Velthuis" <newsgroups@rvelthuis.de> |
|---|---|
| Date | 2017-04-21 11:44 +0000 |
| Message-ID | <xn0kozul98j85y7007@nntp.aioe.org> |
| In reply to | #57709 |
josv@planet.nl wrote: > Hi, > When I getting into Forth it was easy to learn. > Each word could be explained within 8 lines using a half side of an > A4 page (portrait). Quite clear and understandable. > It seems recognizers are beyond that capability. I find recognizers actually quite easy to understand. I already implemented something similar for my number conversion (e.g. the prefixes like # $ % and 'a', but also 0x as alternative). Recognizers are just a little better formalized. -- Rudy Velthuis http://www.rvelthuis.de "The most important job is not to be Governor, or First Lady in my case." -- George W. Bush
[toc] | [prev] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-04-21 13:49 +0100 |
| Message-ID | <odcuvi$8pu$1@dont-email.me> |
| In reply to | #57709 |
On 4/21/2017 10:58, josv@planet.nl wrote:
> Hi,
> When I getting into Forth it was easy to learn.
> Each word could be explained within 8 lines using a half side of an A4 page (portrait).
> Quite clear and understandable.
> It seems recognizers are beyond that capability.
> Jos
>
They're easier to write than (perhaps) to explain. Much of the
explanation is because the approach is novel, requires the interpreter
to change, and has some desirable side effects in terms of parsing.
Here's a recognizer for a hex number prefixed by 0x that have the form
0x0 up to 0xffffffff.
First we need to specify a set of rules for processing the number in
each state; here it's called DT:0X. Then we need a recognizer, called
rec:0x here. If it succeeds, then return n DT:0X else return DT:NULL.
Lastly, add our recognizer to the stack of recognizers.
: plit postpone literal ;
' noop \ interpret: do nothing
' plit \ compile as a literal
:noname plit postpone plit ; \ postpone a literal
dt-token: dt:0x ( n -- )
: rec:0x ( addr u -- n dt:number | dt:null )
dup 2 >= if
over 2 s" 0x" compare 0= if
base @ >r hex
2 /string 0 0 2swap >number \ n n addr len
r> base !
nip + dup 0= if
drop dt:0x exit
then
then
then 2drop dt:null ;
' rec:0x get-recognizers 1+ set-recognizers
And we're done. You can try it out in WF32.
--
Alex
[toc] | [prev] | [next] | [standalone]
| From | josv@planet.nl |
|---|---|
| Date | 2017-04-21 09:03 -0700 |
| Message-ID | <a7d183fc-63f1-4fff-bb08-74c79a2d2192@googlegroups.com> |
| In reply to | #57717 |
Hi Alex, Thanks for the explanation. Despite more than 8 lines. :-) Jos On 21 april 2017 14:49:53 UTC+2 Alex wrote: > On 4/21/2017 10:58, jos..nl wrote: > > Hi, > > When I getting into Forth it was easy to learn. > > Each word could be explained within 8 lines using a half side of an A4 page (portrait). > > Quite clear and understandable. > > It seems recognizers are beyond that capability. > > Jos > > > > They're easier to write than (perhaps) to explain. Much of the > explanation is because the approach is novel, requires the interpreter > to change, and has some desirable side effects in terms of parsing. > > Here's a recognizer for a hex number prefixed by 0x that have the form > 0x0 up to 0xffffffff. > > First we need to specify a set of rules for processing the number in > each state; here it's called DT:0X. Then we need a recognizer, called > rec:0x here. If it succeeds, then return n DT:0X else return DT:NULL. > Lastly, add our recognizer to the stack of recognizers. > > : plit postpone literal ; > > ' noop \ interpret: do nothing > ' plit \ compile as a literal > :noname plit postpone plit ; \ postpone a literal > dt-token: dt:0x ( n -- ) > > : rec:0x ( addr u -- n dt:number | dt:null ) > dup 2 >= if > over 2 s" 0x" compare 0= if > base @ >r hex > 2 /string 0 0 2swap >number \ n n addr len > r> base ! > nip + dup 0= if > drop dt:0x exit > then > then > then 2drop dt:null ; > > ' rec:0x get-recognizers 1+ set-recognizers > > And we're done. You can try it out in WF32. > > -- > Alex
[toc] | [prev] | [next] | [standalone]
| From | albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) |
|---|---|
| Date | 2017-04-20 19:22 +0200 |
| Message-ID | <odaqph$7tc$1@cherry.spenarnc.xs4all.nl> |
| In reply to | #57642 |
In article <odaesj$quo$1@dont-email.me>, Alex <alex@rivadpm.com> wrote: >I've put my Windows Forth up on github at >https://github.com/alextangent/wf32 > >Licensed where possible under the 2 clause BSD >https://opensource.org/licenses/BSD-2-Clause > >The system started life as a branch of Win32Forth. It is now pretty well >unrecognisable, but it has helped bootstrap WF32 into life. > >. it's a complete bottom up rewrite >. it's an STC not an ITC; >. it doesn't do very many Window-ey things and is a console application; >. it has a very extensive and completely rewritten assembler that >supports 32 and 64 bit rather than the original 16 and 32 bit >. it is very documentation lite. >. and so on. Was it a lot of effort to accomodate a 64 bit assembler? (The ciforth fp is written in assembler, for 32 bit. I discovered that I needed only 48 C, in front of NEXT, and take care of conversion to integer, to make it work on 64 bits. At that point I stopped.) >-- >Alex Groetjes Albert -- Albert van der Horst, UTRECHT,THE NETHERLANDS Economic growth -- being exponential -- ultimately falters. albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst
[toc] | [prev] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-04-20 19:19 +0100 |
| Message-ID | <odatt1$gs8$1@dont-email.me> |
| In reply to | #57650 |
On 4/20/2017 18:22, Albert van der Horst wrote: > > Was it a lot of effort to accomodate a 64 bit assembler? No, because I started there with 64 bits and worked my way back to 32 bits. It was a definite design goal not to support 16 bits; I had considered using the Win32Forth assembler as a starting point, but it has too much 16 bit stuff and is horribly complex (and sometimes generates bad code). The core of the assembler is around 800 lines, and a lot of them are comments. I think it's approx 500 lines or so. There's a chunk of it designed to be used from automated code generators, rather than the full blown syntax supported by CODE words. The rest is all the opcodes and encodings. Having a relatively sophisticated core makes it easier to add opcodes; adding float support is around 200 lines of code. VEX is working out at just over 1 line per opcode. -- Alex
[toc] | [prev] | [next] | [standalone]
| From | "HAA" <someone@microsoft.com> |
|---|---|
| Date | 2017-04-21 13:44 +1000 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <odbv80$107s$1@gioia.aioe.org> |
| In reply to | #57642 |
Alex wrote: > ... > Why change the licence from public domain to BSD? Partly because PD > really doesn't have any legal standing in UK law; a new version of a > public domain work will be copyright protected, even though the original > work is not. That's the whole idea. You can rework a 'public domain' work then do with it as you please including, as you did, place a copyright on it. The original work however remains 'public domain'. Having copyrighted the new work, you must now defend it against others who would seek to violate the terms you imposed and that's where the law comes in (if you can afford it). The hassle and expense may make sense if commercial interests were at stake but for the average hobbyist with nothing to gain, it's easier to declare your work 'public domain' understanding that it will remain so.
[toc] | [prev] | [next] | [standalone]
| From | Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> |
|---|---|
| Date | 2017-04-21 22:45 -0400 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <20170421224554.3164118b@_> |
| In reply to | #57684 |
On Fri, 21 Apr 2017 13:44:16 +1000 "HAA" <someone@microsoft.com> wrote: > Alex wrote: > > Why change the licence from public domain to BSD? Partly because PD > > really doesn't have any legal standing in UK law; a new version of a > > public domain work will be copyright protected, even though the > > original work is not. > > That's the whole idea. You can rework a 'public domain' work then do > with it as you please including, as you did, place a copyright on > it. Placing a copyright on a public domain work is not legal in the U.S. as copyright law cannot be applied to a work once in the public domain. Placing another copyright on a copyrighted work for the modifications to that work is not legal in the U.S. either. The reason for both of these is because trivial changes to an existing work are NOT copyrightable under U.S. law, at all, e.g., patches, corrections, modifications, etc. Under U.S. law, trivial modifications to a work fall under the original copyright or lack thereof, i.e., public domain. This means that changes to GNU copyleft code fall under GNU copyleft, and changes to public domain works fall under the public domain. If he made substantial changes, then he can copyright those changes, if they've been extracted from the original public domain work. Also, the only time a copyright can be applied to a derivation of another copyrighted work is when there are substantial changes which are sufficient enough to qualify the derivation as a completely new work in the eyes of the law. If his modifications are less than the majority of the derivative work, then he can't copyright the resulting derivation. Rod Pemberton -- All it takes for humanity to conquer the world's toughest problems is to hope, to believe, to share, and to do, in cooperation.
[toc] | [prev] | [next] | [standalone]
| From | Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> |
|---|---|
| Date | 2017-04-21 22:50 -0400 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <20170421225022.43448b45@_> |
| In reply to | #57766 |
On Fri, 21 Apr 2017 22:45:54 -0400 Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> wrote: > On Fri, 21 Apr 2017 13:44:16 +1000 > "HAA" <someone@microsoft.com> wrote: > > Alex wrote: > > > Why change the licence from public domain to BSD? Partly because > > > PD really doesn't have any legal standing in UK law; a new > > > version of a public domain work will be copyright protected, even > > > though the original work is not. > > > > That's the whole idea. You can rework a 'public domain' work then > > do with it as you please including, as you did, place a copyright on > > it. > > Placing a copyright on a public domain work is not legal in the U.S. > as copyright law cannot be applied to a work once in the public > domain. Placing another copyright on a copyrighted work for the > modifications to that work is not legal in the U.S. either. The > reason for both of these is because trivial changes to an existing > work are NOT copyrightable under U.S. law, at all, e.g., patches, > corrections, modifications, etc. Under U.S. law, trivial > modifications to a work fall under the original copyright or lack > thereof, i.e., public domain. This means that changes to GNU copyleft > code fall under GNU copyleft, and changes to public domain works fall > under the public domain. If he made substantial changes, then he can > copyright those changes, if they've been extracted from the original > public domain work. Also, the only time a copyright can be applied > to a derivation of another copyrighted work is when there are > substantial changes which are sufficient enough to qualify the > derivation as a completely new work in the eyes of the law. If his > modifications are less than the majority of the derivative work, then > he can't copyright the resulting derivation. > > P.S. There is no way to make U.S. public domain works legally compliant with legal jurisdictions, e.g., Germany, which do not recognize the concept of public domain (no copyright, or expired copyright). Rod Pemberton -- All it takes for humanity to conquer the world's toughest problems is to hope, to believe, to share, and to do, in cooperation.
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2017-04-22 00:57 -0400 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <odenlg$i74$1@dont-email.me> |
| In reply to | #57768 |
On 4/21/2017 10:50 PM, Rod Pemberton wrote: > On Fri, 21 Apr 2017 22:45:54 -0400 > Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> wrote: > >> On Fri, 21 Apr 2017 13:44:16 +1000 >> "HAA" <someone@microsoft.com> wrote: >>> Alex wrote: > >>>> Why change the licence from public domain to BSD? Partly because >>>> PD really doesn't have any legal standing in UK law; a new >>>> version of a public domain work will be copyright protected, even >>>> though the original work is not. >>> >>> That's the whole idea. You can rework a 'public domain' work then >>> do with it as you please including, as you did, place a copyright on >>> it. >> >> Placing a copyright on a public domain work is not legal in the U.S. >> as copyright law cannot be applied to a work once in the public >> domain. Placing another copyright on a copyrighted work for the >> modifications to that work is not legal in the U.S. either. The >> reason for both of these is because trivial changes to an existing >> work are NOT copyrightable under U.S. law, at all, e.g., patches, >> corrections, modifications, etc. Under U.S. law, trivial >> modifications to a work fall under the original copyright or lack >> thereof, i.e., public domain. This means that changes to GNU copyleft >> code fall under GNU copyleft, and changes to public domain works fall >> under the public domain. If he made substantial changes, then he can >> copyright those changes, if they've been extracted from the original >> public domain work. Also, the only time a copyright can be applied >> to a derivation of another copyrighted work is when there are >> substantial changes which are sufficient enough to qualify the >> derivation as a completely new work in the eyes of the law. If his >> modifications are less than the majority of the derivative work, then >> he can't copyright the resulting derivation. >> >> > > P.S. There is no way to make U.S. public domain works legally > compliant with legal jurisdictions, e.g., Germany, which do not > recognize the concept of public domain (no copyright, or expired > copyright). Maybe I don't understand. Are you saying in Germany copyrights don't expire? -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> |
|---|---|
| Date | 2017-04-22 23:32 -0400 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <20170422233255.1469e9da@_> |
| In reply to | #57778 |
On Sat, 22 Apr 2017 00:57:11 -0400 rickman <gnuarm@gmail.com> wrote: > On 4/21/2017 10:50 PM, Rod Pemberton wrote: > > On Fri, 21 Apr 2017 22:45:54 -0400 > > Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> wrote: > > P.S. There is no way to make U.S. public domain works legally > > compliant with legal jurisdictions, e.g., Germany, which do not > > recognize the concept of public domain (no copyright, or expired > > copyright). > > Maybe I don't understand. Are you saying in Germany copyrights don't > expire? > My understanding is that the E.U. doesn't have the concept of Public Domain. E.g., I was told that when an E.U. government creates software with taxpayer money, it is not Public Domain as for the U.S. (belonging to the people of the U.S.), but is copyrighted by their government (belongs to the State). The State may license the copyright as they see fit. I.e., once a copyright "expires" in the E.U., the copyright ownership simply transfers from the holder to the State. Ownership doesn't transfer into the Public Domain as in the U.S. Another person in the E.U. told me they couldn't work on a Public Domain project because there was no legal way for them to forfeit copyright (no copyright) under E.U. laws, as E.U. laws and treaties automatically copyright their works for the life of the author and some years. (Of course, you could Google or Wikipedia to confirm or correct.) Rod Pemberton -- All it takes for humanity to conquer the world's toughest problems is to hope, to believe, to share, and to do, in cooperation.
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2017-04-24 16:54 +0000 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <2017Apr24.185435@mips.complang.tuwien.ac.at> |
| In reply to | #57778 |
rickman <gnuarm@gmail.com> writes:
>On 4/21/2017 10:50 PM, Rod Pemberton wrote:
>> P.S. There is no way to make U.S. public domain works legally
>> compliant with legal jurisdictions, e.g., Germany, which do not
>> recognize the concept of public domain (no copyright, or expired
>> copyright).
>
>Maybe I don't understand. Are you saying in Germany copyrights don't
>expire?
That's what he is saying, but he is wrong.
- 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/
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2017-04-24 13:05 -0400 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <odlb2p$i73$2@dont-email.me> |
| In reply to | #58005 |
On 4/24/2017 12:54 PM, Anton Ertl wrote: > rickman <gnuarm@gmail.com> writes: >> On 4/21/2017 10:50 PM, Rod Pemberton wrote: >>> P.S. There is no way to make U.S. public domain works legally >>> compliant with legal jurisdictions, e.g., Germany, which do not >>> recognize the concept of public domain (no copyright, or expired >>> copyright). >> >> Maybe I don't understand. Are you saying in Germany copyrights don't >> expire? > > That's what he is saying, but he is wrong. He did follow up. He says the original copyright expires, but it doesn't go into public domain, it becomes property of the state. That does seem a bit strange. -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2017-04-25 07:26 +0000 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <2017Apr25.092650@mips.complang.tuwien.ac.at> |
| In reply to | #58008 |
rickman <gnuarm@gmail.com> writes:
>He says the original copyright expires, but it
>doesn't go into public domain, it becomes property of the state.
Also wrong.
- 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/
[toc] | [prev] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-04-22 12:48 +0100 |
| Subject | Re: WF32, a Windows 32 bit Forth |
| Message-ID | <odffoe$nfl$1@dont-email.me> |
| In reply to | #57766 |
On 4/22/2017 03:45, Rod Pemberton wrote: > On Fri, 21 Apr 2017 13:44:16 +1000 > "HAA" <someone@microsoft.com> wrote: > >> Alex wrote: > >>> Why change the licence from public domain to BSD? Partly because PD >>> really doesn't have any legal standing in UK law; a new version of a >>> public domain work will be copyright protected, even though the >>> original work is not. >> >> That's the whole idea. You can rework a 'public domain' work then do >> with it as you please including, as you did, place a copyright on >> it. > > Placing a copyright on a public domain work is not legal in the U.S. as > copyright law cannot be applied to a work once in the public domain. I'm not in the US. I am also not a lawyer (and I suspect you're not one). > Placing another copyright on a copyrighted work for the modifications > to that work is not legal in the U.S. either. The reason for both > of these is because trivial changes to an existing work are NOT > copyrightable under U.S. law, at all, e.g., patches, corrections, > modifications, etc. Under U.S. law, trivial modifications to a work > fall under the original copyright or lack thereof, i.e., public domain. The changes are so substantial that I defy anyone to find common ground between, for example, the Win32Forth kernel and the WF32 kernel, beyond the unavoidable commonality of words named DUP SWAP etc. > This means that changes to GNU copyleft code fall under GNU copyleft, > and changes to public domain works fall under the public domain. If he > made substantial changes, then he can copyright those changes, if > they've been extracted from the original public domain work. Also, the > only time a copyright can be applied to a derivation of another > copyrighted work is when there are substantial changes which are > sufficient enough to qualify the derivation as a completely new work in > the eyes of the law. If his modifications are less than the majority > of the derivative work, then he can't copyright the resulting > derivation. > Yes, that is the case. But again, I am in the UK, so (in the main) the Berne convention applies, where works eventually fall into the public domain after a period of time. I can't see any way where you can place a work in the public domain immediately. Copyright is automatic. > > Rod Pemberton > -- Alex
[toc] | [prev] | [next] | [standalone]
Page 1 of 2 [1] 2 Next page →
Back to top | Article view | comp.lang.forth
csiph-web