Sujet : Re: kForth-64/32 updates
De : anthk (at) *nospam* openbsd.home (anthk)
Groupes : comp.lang.forthDate : 12. Apr 2025, 08:14:02
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <slrnvvimkk.b02.anthk@openbsd.home>
References : 1
User-Agent : slrn/1.0.3 (OpenBSD)
On 2025-03-08, Krishna Myneni <
krishna.myneni@ccreweb.org> wrote:
The Linux kForth packages (32-bit x86 and 64-bit x86_64) on Github have
undergone substantial revision in the assembler portion of the VM code.
The current version numbers are 2.6.0 for the 32-bit package and 0.6.0
for the 64-bit package.
>
In addition to the 64-bit package implementing the source code
(vm64-fast.s) for the first working version of kforth64-fast, the
assembler code for both 32 and 64 bit versions has been improved,
assembler macros' register use is internally documented, and the macros'
interface has been made uniform to enable them to be used more easily
within internal code.
>
From the source, both regular and fast versions of the executables are
built: {kforth32 / kforth32-fast} or {kforth64 / kforth64-fast}. The
fast versions omit run-time type checking and provide anywhere from 15
to 40% improvement in speed, depending on the application.
>
The main goal of the changes to the assembly code is to prepare for
future experimental changes to the VM code to speed up both regular and
fast versions of the executables.
>
kForth's development goals remain the same as for the last 20 years:
>
1. simple-to-build from source, requiring few tools (C/C++/assembler)
2. lightweight, requiring few external libraries
3. provide useful Forth shell for interactive computing/programming
4. functional for developing and running simple and complex programs
5. useful for low-level (machine code) and high-level (modular Forth)
6. useful for embedding into another program for script extensions
7. provide numerous programming examples on different topics
8. well-documented (still much more work needed on this)
9. easy and fun to learn and use
>
--
Krishna Myneni
https://github.com/mynenik
>
>
>
I'd love an OpenBSD forth for it.