Paul Rubin <no.e...@nospam.invalid> wrote:
an...@mips.complang.tuwien.ac.at (Anton Ertl) writes:
We're in an era where ram in kilobyte amounts costs almost nothing.I know there are some C compilers that statically allocate everything
Or on even smaller parts, I think it's hard for Forth to compete resource-wise with C, because of the memory used by Forth's stacks,
based on whole-program analysis, but I don't know of any that are
effective on tiny MCUs that are too small for Forth. Apart from
anything else, if you're constrained for code space you'll want to use something like byte-token-threading, and that's easy in Forth.
the higher inconvenience of using bytes instead of wider cells,Interactivity on very small devices has been a solved problem in Forth
program space used by the interpreter and extraneous Forth word definitions, etc. Maybe there are Forth compilers that can target
an 8-bit MCU with 0.5k of program flash and 32 bytes of ram, but
(like C) they will be external compilers that don't bring much interactivity to the target app either.
for some 30 years, ever since talker PROMs and then chipFORTH. 0.5k of program space is tight, though. For Forth, especially if you want multi-tasking, I think that a reasonable minimum is 128-256 bytes of
RAM and 4k program space.
Once you're at the level of an industrial device (not batteryNot necessarily. If you have a very small MCU that is controlling
powered) you might as well use an embedded Linux board (starting at
the 5 dollar Raspberry Pi Zero) and then have basically unlimited resources and software options.
something, you're quite likely to be at the sharp end of real
time.
Andrew.
One of the most interesting things about Forth is the lack of collaboration with in a community to excel and promote the language, while I see lots of individual efforts, lots of great intentions, it’s this lack of collaboration that creates greaterfragmentation and in the end and a deterrent reason for new uptake in the language IMO.
From an embedded perspective, I firmly believe that FORTH really does have something that should greatly appeal commercial application, provided it is wrapped into a set of tools that enable commercialization and collaboration with in a community. IMHOthe is is so much wasted effort into trying to build “ my forth is better than your’s “ with the right intent, yet this does not serve the community to capture new adoption of users or commercial applications.
Forth has so much to offer, and yes, doing interactive programing is a great thing, but provided the way most (i’ll use traditional forthers here as to not not hurt anyone as I still have my Franklin 1000 for 84 where I started programing just toprove that it’s not age related ) traditional forthers, where they are building a great deal of tools into a little MCU intended to placed in it’s single uprose function once deployed, it does not add lot’s of value to have editors or complex tools
In this view of Forth on a PC *IDE and a tethered system would allow the efforts of the Fort community to focus on building target compilers for each of the platforms they wish to incorporate. Once this happens, it would allow the community and ininterest of newcomers to extend the (tools as a collection of vocabulary to help and build the IDE experience ) tools need to help in development of the applications. One of these tools for example would be having the capacity to see the register values
Ideally, this would allow for more repeatability of cross platform compiling the forth code, and it should attract new users that would extend the platform provided collaboration along with commercial backing in a open source effort.blueprint of what to consider, but more of a seed of where to lead the discussion.
Call me an idealist, but once you are there, the community can further consider how to extend the tethered functionality, like wireless, OTA updates, etc.
Well, that is a thought, and many can choose their own path and that is perfectly fine as we don’t hold the ultimate truth… * i certainly do not * but if anyone is truly interested in helping drive FORTH’s adoption, I hope this could be, not a
Forth has a very strong potential to, IMHO, reevaluate how programing is learned for embedded systems, it would give users a better understanding of the underlining HW, it would allow for more efficient programs, great opportunity to build commercialsolutions while still gaining the hobbyist’s interest along with the interactiveness and the DSL capabilities of forth naturally has to offer.
Moving to a stack based programing does take effort and application for the programmer, it has taken me about two to three months to really begin to understand the return stack and how to best use it to grasp some of the more advanced ways ofimplementing forth to solve problems. It’s a fun language once you start, but the fragmentation and the lack of repeatability is the hardest barrier to grasp some of these concepts IMO, specially from those that learn by reading the code, testing it,
FWIW, food for thought.
Jose.
One of the most interesting things about Forth is the lack of collaboration with in a community to excel and promote the language, while I see lots of individual efforts, lots of great intentions, it’s this lack of collaboration that creates greaterfragmentation and in the end and a deterrent reason for new uptake in the language IMO.
From an embedded perspective, I firmly believe that FORTH really does have something that should greatly appeal commercial application, provided it is wrapped into a set of tools that enable commercialization and collaboration with in a community. IMHOthe is is so much wasted effort into trying to build “ my forth is better than your’s “ with the right intent, yet this does not serve the community to capture new adoption of users or commercial applications.
On 6/11/2022 11:12 pm, jem...@gmail.com wrote:
One of the most interesting things about Forth is the lack of
collaboration with in a community to excel and promote the language,
while I see lots of individual efforts, lots of great intentions, it’s
this lack of collaboration that creates greater fragmentation and in
the end and a deterrent reason for new uptake in the language IMO.
IMO Forth is aimed squarely at the experienced individual. Consider
Moore himself. It's
the attempts to popularize it that have failed. If one wants a
'batteries included' language,
then IMO look at something like 8th where the developer seems to be
catering to users who
a) are happy to go along and b) have faith in what he's doing.
On 07/11/2022 2:50, dxforth wrote:
On 6/11/2022 11:12 pm, jem...@gmail.com wrote:
One of the most interesting things about Forth is the lack of
collaboration with in a community to excel and promote the language,
while I see lots of individual efforts, lots of great intentions, it’s >> this lack of collaboration that creates greater fragmentation and in
the end and a deterrent reason for new uptake in the language IMO.
IMO Forth is aimed squarely at the experienced individual. ConsiderI approve this message.
Moore himself. It's
the attempts to popularize it that have failed. If one wants a
'batteries included' language,
then IMO look at something like 8th where the developer seems to be catering to users who
a) are happy to go along and b) have faith in what he's doing.
Moving to a stack based programing does take effort and application for the programmer, it has taken me about two to three months to really begin to understand the return stack and how to best use it to grasp some of the more advanced ways ofimplementing forth to solve problems. It’s a fun language once you start, but the fragmentation and the lack of repeatability is the hardest barrier to grasp some of these concepts IMO, specially from those that learn by reading the code, testing it,
He goes through a lot of things and he uses the return stack for controlAlthough my own compiler (4tH) does allow it, I'm not quite a fan of manipulating
flow towards the end.
On Thursday, November 10, 2022 at 3:49:37 PM UTC+1, shtps wrote:https://www.quickbookintegration.com
He goes through a lot of things and he uses the return stack for control flow towards the end.Although my own compiler (4tH) does allow it, I'm not quite a fan of manipulating
the control stack for flow control. First, any word called has its own return address
on the TORS. Usually, you have to take it off do do stuff and put it on later in order
not to break things. IMHO this results in very murky code. Second, it's not portable.
compilers may use a different mechanism to do flow control.
Can't say I never used it, but I'm hesitant to do it - and only as a last resort. I'd rather
inline such code - since at least then it remains WITHIN a definition.
That doesn't mean I never use the return stack for my own purposes - quite the opposite.
It's a useful temporary storage. A technique I often use is to store constant terms there
- so they can be fetched with a single R@. It's quite useful when implementing routines
with LOTS of parameters. You store the more constant ones on the return stack, TORS
is perfect for stuff that RARELY changes - like "R> 1+ >R".
For that reason 4tH supports R@, R'@ and R"@. They act like a kind of R/O registers. And
it doesn't cause much overhead, since they're equivalent (in 4tH) to I, I' and J.
Hans Bezemer
Trying to reproduce 40-years old approach with Forth, we are really going to nowhere. However, why we need to do it? I mean why we need to write OS, smartphone applications, GUI etc. There are a lot of applications where key Forth features as scripting,language flexibility and compactness may be used.
I cannot agreed there is no Forth for <technology name>. We can script TensorFlow, OpenCV or something like this. We can deal with API with a help of Forth shell. The only questions is are we really need Forth features, or it is just an attempt tohighlight well-known technology? As I can see, agressive pushing Forth has almost zero productivity, with predictable answers (or just laughing). As a glueware or embedded tool, Forth is a good approach and will be alive for a long time.
On Friday, 28 December 2018 at 21:59:17 UTC+5:30, Ilya Tarasov wrote:scripting, language flexibility and compactness may be used.
Trying to reproduce 40-years old approach with Forth, we are really going to nowhere. However, why we need to do it? I mean why we need to write OS, smartphone applications, GUI etc. There are a lot of applications where key Forth features as
highlight well-known technology? As I can see, agressive pushing Forth has almost zero productivity, with predictable answers (or just laughing). As a glueware or embedded tool, Forth is a good approach and will be alive for a long time.I cannot agreed there is no Forth for <technology name>. We can script TensorFlow, OpenCV or something like this. We can deal with API with a help of Forth shell. The only questions is are we really need Forth features, or it is just an attempt to
highlight well-known technology? As I can see, agressive pushing Forth has almost zero productivity, with predictable answers (or just laughing). As a glueware or embedded tool, Forth is a good approach and will be alive for a long time.I cannot agreed there is no Forth for <technology name>. We can script TensorFlow, OpenCV or something like this. We can deal with API with a help of Forth shell. The only questions is are we really need Forth features, or it is just an attempt to
You forgot the world of MCUs and embedded devices, that surpass the
PC world by order of magnitudes, and wherein Forth really shines.
highlight well-known technology? As I can see, agressive pushing Forth has almost zero productivity, with predictable answers (or just laughing). As a glueware or embedded tool, Forth is a good approach and will be alive for a long time.I cannot agreed there is no Forth for <technology name>. We can script TensorFlow, OpenCV or something like this. We can deal with API with a help of Forth shell. The only questions is are we really need Forth features, or it is just an attempt to
You forgot the world of MCUs and embedded devices, that surpass the
PC world by order of magnitudes, and wherein Forth really shines.
It's just a spammer (both posts before yours) who found new way
of posting his spam: instead of creating new thread — chaining to
exisiting ones.
Sad. Even spammers end up here.
Never thought that chatgpt was that bad..
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 475 |
Nodes: | 16 (2 / 14) |
Uptime: | 19:04:27 |
Calls: | 9,487 |
Calls today: | 6 |
Files: | 13,617 |
Messages: | 6,121,093 |