projects:forth-namespaces:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
projects:forth-namespaces:start [2019-12-18 11:48] – [430eForth43n6vis] mm | projects:forth-namespaces:start [2023-11-06 12:27] (aktuell) – [Mecrisp-Stellaris] mm | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ===== Forth - Namespaces and Context Switching ===== | + | ===== Forth Namespaces and Context Switching |
In Forth namespaces and context switching are based on wordlists, search orders and vocabularies. | In Forth namespaces and context switching are based on wordlists, search orders and vocabularies. | ||
Zeile 7: | Zeile 7: | ||
Since I discovered Forth and became familiar with the vocabulary concepts of Fig-Forth and F83, I was missing a way to bind a vocabulary (a namespace, a wordlist) to a word representing data, to create a data type or a simple object (implicit context switching). | Since I discovered Forth and became familiar with the vocabulary concepts of Fig-Forth and F83, I was missing a way to bind a vocabulary (a namespace, a wordlist) to a word representing data, to create a data type or a simple object (implicit context switching). | ||
- | Over the years I found a way to do it without using state-smart words, first for PC Forth Systems and during the last years also for Flash based MCU Forth Systems. VOCs and ITEMs [1] are the core elements of the final concept. | + | Over the years I found a way to do it without using state-smart words, first for PC Forth Systems and during the last years also for Flash based MCU Forth Systems. VOCs, ITEMs and STICKY words are the core elements of the final concept. |
- | With this Wiki page I will try to beam your attention towards context switching with VOCS and ITEMs by presenting Forth Systems that support it, examples and HOWTOs. | + | With this Wiki page I will try to beam your attention towards context switching with VOCs, ITEMs and STICKY words by presenting Forth Systems that support it, examples and HOWTOs. |
2019-12-18 Manfred Mahlow | 2019-12-18 Manfred Mahlow | ||
Zeile 15: | Zeile 15: | ||
==== 430eForth43n6vis ==== | ==== 430eForth43n6vis ==== | ||
- | 430eForth43n6vis [2] for the MSP430G2553 MCU is a tiny Forth System with full support for namespaces and context switching based on VOCs and ITEMs. It is an extended version of C.H. Tings 430eForth for the MSP430G2553 MCU, based on the naken_ASM version published by M. Kalus on GitHub. | + | 430eForth43n6vis |
- | 430eForth43n6vis was created as part of a feasibility study how to extend the support for namespaces in Forth by implementing vocabulary prefixes (VOC) instead of F83 vocabularies (VOCABULARY). Wordlists, vocabulary prefixes (VOCs), <voc> ITEMs, STICKY words and related TOOLS have been added and two search orders are used, a permanent and a temporary one. For further details please read the README file that comes with the tar archive. | + | 430eForth43n6vis was created as part of a feasibility study how to extend the support for namespaces in Forth by implementing vocabulary prefixes (VOC) instead of F83 vocabularies (VOCABULARY) |
- | Image and Tools : {{: | + | 430eForth |
- | Examples and HOWTOs : [[ | 430eforth43n6vis-g2553-examples.tar.gz]] :-( //Coming soon// | + | Examples and HOWTOs : {{: |
- | [1] {{:events:ft2019:vocs_items_und_sticky_words.pdf|VOCs ITEMS und STICKY Words, Forth Tagung 2019}} | + | You can find the latest 430eForth with VIS support at [[en:projects:430eforth-workbench:start|]] . |
- | [2] Namespaces and Context Switching for a Tiny Forth, VD 4/2019 | + | <sup>[1]</ |
+ | < | ||
+ | < | ||
+ | ==== Mecrisp-Stellaris ==== | ||
+ | Mecrisp-Stellaris was a very special candidate to add namespaces and context switching because of its special features and the many different supported targets < | ||
+ | |||
+ | The extension adds support for wordlists, vocabulary prefixes (VOCs), implicit context switching words (ITEMs), STICKY words and related TOOLS. | ||
+ | |||
+ | The source code file **'' | ||
+ | |||
+ | //The extension is compiled to FLASH. Before loading the file execute // | ||
+ | |||
+ | The extension should work for most Mecrisp-Stellaris flavors. The only requirement is, that the header of a word compiled into FLASH (or RAM) is placed without a gap behind the last comma-compiled 32Bit number (tag). | ||
+ | |||
+ | < | ||
+ | |||
+ | ==== Mecrisp-Quintus ==== | ||
+ | |||
+ | Mecrisp-Quintus (C) Matthias Koch is a rewrite of Mecrisp-Stellaris with almost the same look-and-feel for the RISC-V architecture. That's also true for the VIS-Extension. From a user perspective there is no difference between the VIS-Extension for Mecrisp-Quintus and Mecrisp-Stellaris. | ||
+ | |||
+ | The source code file **'' | ||
+ | |||
+ | You can find a VIS Glossary (for Mecrisp-Stellaris) in the Forth-Magazin Vierte Dimension 1/2020 and some VIS (Mini) HOWTOs in VD 1/2020 ff. | ||
projects/forth-namespaces/start.1576666108.txt.gz · Zuletzt geändert: 2019-12-18 11:48 von mm