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


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

ANN: new kForth development snapshot

Started bykrishna.myneni@ccreweb.org
First post2017-05-31 03:52 -0700
Last post2017-06-21 18:44 +0200
Articles 7 — 4 participants

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


Contents

  ANN: new kForth development snapshot krishna.myneni@ccreweb.org - 2017-05-31 03:52 -0700
    Re: ANN: new kForth development snapshot rickman <gnuarm@gmail.com> - 2017-05-31 09:17 -0400
      Re: ANN: new kForth development snapshot krishna.myneni@ccreweb.org - 2017-05-31 20:05 -0700
        Re: ANN: new kForth development snapshot rickman <gnuarm@gmail.com> - 2017-06-01 12:45 -0400
          Re: ANN: new kForth development snapshot jason.songhurst@gmail.com - 2017-06-01 11:44 -0700
            Re: ANN: new kForth development snapshot rickman <gnuarm@gmail.com> - 2017-06-02 18:14 -0400
            Re: ANN: new kForth development snapshot Hans Bezemer <the.beez.speaks@gmail.com> - 2017-06-21 18:44 +0200

#60100 — ANN: new kForth development snapshot

Fromkrishna.myneni@ccreweb.org
Date2017-05-31 03:52 -0700
SubjectANN: new kForth development snapshot
Message-ID<0ef2b763-baae-4bc7-a0eb-4e73056ba7b9@googlegroups.com>
A new development snapshot of kForth (2017-05-31) is available at

ftp://ccreweb.org/software/kforth/linux/develop/1.6.x/

Please see the ChangeLog file in this directory for a list of changes. A subtle bug involving a macro has been fixed. The bug could cause the words, [DEFINED] and [UNDEFINED], to misalign a hidden stack pointer. The bug affected the kforth executable, but not kforth-fast. If you are using the current release version (1.5.3) or a recent development snapshot, I recommend upgrading to the current development snapshot.

Incidentally, this bug was uncovered by the recent work on matrix multiplication using mixed Forth and assembler definitions (mmul_x86.4th, now included in the package).

Krishna
--

For the C programmers here, you will recognize this stupid mistake:

// macro definition in kfmacros.h

#define DROP  ++GlobalSp; ++GlobalTp;

// From earlier CPP_defined() and CPP_undefined() in ForthVM.cpp
   :
   if (! not_found) DROP
   :



[toc] | [next] | [standalone]


#60104

Fromrickman <gnuarm@gmail.com>
Date2017-05-31 09:17 -0400
Message-ID<ogmfja$c6$1@dont-email.me>
In reply to#60100
Is there a web page talking about what makes kForth unique?  Why would 
anyone be interested in this Forth compared to any other?

Rick


krishna.myneni@ccreweb.org wrote on 5/31/2017 6:52 AM:
> A new development snapshot of kForth (2017-05-31) is available at
>
> ftp://ccreweb.org/software/kforth/linux/develop/1.6.x/
>
> Please see the ChangeLog file in this directory for a list of changes. A subtle bug involving a macro has been fixed. The bug could cause the words, [DEFINED] and [UNDEFINED], to misalign a hidden stack pointer. The bug affected the kforth executable, but not kforth-fast. If you are using the current release version (1.5.3) or a recent development snapshot, I recommend upgrading to the current development snapshot.
>
> Incidentally, this bug was uncovered by the recent work on matrix multiplication using mixed Forth and assembler definitions (mmul_x86.4th, now included in the package).
>
> Krishna
> --
>
> For the C programmers here, you will recognize this stupid mistake:
>
> // macro definition in kfmacros.h
>
> #define DROP  ++GlobalSp; ++GlobalTp;
>
> // From earlier CPP_defined() and CPP_undefined() in ForthVM.cpp
>    :
>    if (! not_found) DROP
>    :

-- 

Rick C

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


#60122

Fromkrishna.myneni@ccreweb.org
Date2017-05-31 20:05 -0700
Message-ID<56b44367-2958-4faf-94c9-7f8d2f14e3d2@googlegroups.com>
In reply to#60104
On Wednesday, May 31, 2017 at 8:17:49 AM UTC-5, rickman wrote:
> Is there a web page talking about what makes kForth unique?  Why would 
> anyone be interested in this Forth compared to any other?
> ...

This is an announcement for people who may be using or experimenting with kForth, and not a promotion for new users. However, anyone interested in experimenting with the system (Linux, x86 only), should follow the steps below:

1) Start here for an overview, and to learn about kForth's dictionary and features:

http://ccreweb.org/software/kforth/kforth0.html

2) Next, read more about special, non-standard features of kForth, and their motivation:

http://ccreweb.org/documents/programming/nsf-a.html

3) Download the last release version (1.5.3) or the latest development snapshot (again, Linux x86 only), and follow the build/install instructions in the User's Manual at

http://ccreweb.org/software/kforth/kforth1a.html#Installation%20under%20Linux

4) If you are new to Forth, get started using kForth with the quick tutorial at

http://ccreweb.org/software/kforth/kforth2.html

Have fun with it. Look through the example programs which illustrate the different ways it may be used.

Krishna


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


#60153

Fromrickman <gnuarm@gmail.com>
Date2017-06-01 12:45 -0400
Message-ID<ogpg5d$i5t$1@dont-email.me>
In reply to#60122
krishna.myneni@ccreweb.org wrote on 5/31/2017 11:05 PM:
> On Wednesday, May 31, 2017 at 8:17:49 AM UTC-5, rickman wrote:
>> Is there a web page talking about what makes kForth unique?  Why would
>> anyone be interested in this Forth compared to any other?
>> ...
>
> This is an announcement for people who may be using or experimenting with kForth, and not a promotion for new users. However, anyone interested in experimenting with the system (Linux, x86 only), should follow the steps below:
>
> 1) Start here for an overview, and to learn about kForth's dictionary and features:
>
> http://ccreweb.org/software/kforth/kforth0.html
>
> 2) Next, read more about special, non-standard features of kForth, and their motivation:
>
> http://ccreweb.org/documents/programming/nsf-a.html
>
> 3) Download the last release version (1.5.3) or the latest development snapshot (again, Linux x86 only), and follow the build/install instructions in the User's Manual at
>
> http://ccreweb.org/software/kforth/kforth1a.html#Installation%20under%20Linux
>
> 4) If you are new to Forth, get started using kForth with the quick tutorial at
>
> http://ccreweb.org/software/kforth/kforth2.html
>
> Have fun with it. Look through the example programs which illustrate the different ways it may be used.

Thanks for the reply, but that isn't the question I asked.  There are many, 
many Forths out there that run on PCs or embedded targets.  What is 
different about kForth from all the others available?  What was your goal in 
writing a new Forth when there are so many around?

That's the very first question I would want an answer to before I spend any 
time even reading the installation instructions rather than using what I 
already am familiar with.  What is the purpose of kForth?

-- 

Rick C

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


#60159

Fromjason.songhurst@gmail.com
Date2017-06-01 11:44 -0700
Message-ID<d24de687-9c7e-49d1-a8ef-91fbcfe50ded@googlegroups.com>
In reply to#60153
read more about special, non-standard features of kForth, and their motivation: 

http://ccreweb.org/documents/programming/nsf-a.html 

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


#60209

Fromrickman <gnuarm@gmail.com>
Date2017-06-02 18:14 -0400
Message-ID<ogsnp4$csr$1@dont-email.me>
In reply to#60159
jason.songhurst@gmail.com wrote on 6/1/2017 2:44 PM:
> read more about special, non-standard features of kForth, and their motivation:
>
> http://ccreweb.org/documents/programming/nsf-a.html

Thanks, I guess I hit the first bullet item and stopped reading Krishna's 
post.  There tend to be a lot of Forths out there and it is seldom that 
anyone explains why they wrote it.  This is exactly what I was looking for. 
It has data typing which appears to be the main feature of interest to me.

-- 

Rick C

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


#61126

FromHans Bezemer <the.beez.speaks@gmail.com>
Date2017-06-21 18:44 +0200
Message-ID<594aa325$0$738$e4fe514c@news.xs4all.nl>
In reply to#60159
jason.songhurst@gmail.com wrote:

> read more about special, non-standard features of kForth, and their
> motivation:

Interesting to see how the requirements resulted in two completely different
solutions. 4tH was also meant to be a scripting language. However, I used a
Harvard architecture combined with range checking in order to obtain a
similar result:

- I completely discarded ALLOT and used STRING, BUFFER and ARRAY instead;
- The Harvard architecture resulted into a R/O segment and a R/W char and
cell segment;
- Your VARIABLE V V 3 ! sequence MAY work in 4tH as long as "3" is a valid
address in the cell segment;
- C@ works in the char segment, @ in the cell segment and @C in the code
segment. Same for C! and ! (there is of course no !C)
- C, works in 4tH, but only in conjunction with OFFSET (OFFSET EXAMPLE CHAR
$ C,) If you want it back, you have to write "0 EXAMPLE".

Hans Bezemer

[toc] | [prev] | [standalone]


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


csiph-web