-
Notifications
You must be signed in to change notification settings - Fork 66
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Word Digit appears to be missing from 2.2.21 #152
Comments
Maybe this is related to a possible vocabulary issue alluded to in #153? |
Please check your `target` path and try using `#require digit`.
|
Hi Thomas, if I look at forth.asm I see in line Line 2178 in c420dcf
; DIGIT ( u -- c ) ( TOS STM8: -- Y,Z,N ) I had assumed that all the words in the file forth.asm, and also mentioned in words.md, would simply be there in the W1209-FD binary distribution. It's no big deal, in the case of the word digit, to define my own version of word if it's not in the vocabulary of the binary distribution. But given that I couldn't understand what the following line in the file \stm8ef-bin.V2.2.21pre2\out\W1209-FD\target\digit meant I'm hoping I don't have to do this for other words. Kind regards |
Hi Richard, first of all, thanks for pointing out that the whole Alias stuff needs a better explanation. I updated the Using Alias Words Wiki in the hope of making this more accessible. Could you please check if the concept is sufficiently understandable? I would also appreciate a recommendation on where to point users to the "missing words", and hear your opinion on e4thcom and codeload.py. Kind regards |
Hi Thomas,
I'll read through this over the next few days and comment as I notice
something. But to point my future comments in context I'd point out that I
need very little flash available for my applications. I just can't imagine
writing that many new forth words for a W1209 board for one of my projects.
So while applaud the efforts yourself and others go to to minimise the size
of the forth binary, it comes at a cost for less knowledgeable users like
myself in the time it takes to work out what is happening.
My suspicion is that Amforth suffered when the 'recognizer' concept was
introduced. It obviously meant something very powerful to the architects.
But when I struck problems there was no material or help that could be used
to start out on a learning curve. So while my AVR assembly background
allowed me to work out how Amforth was internally constructed and compiled,
the issue of getting recognisers to work left me confused. In the end I
wrote my own solution but I suspect it could have been so much better if I
had understood this recogniser implementation.
I'm going to need more time than I have today to read Using Alias Words.
It's on my list for tomorrow.
I don't use e4thcom and coadload.py because I haven't found the motivation
and hardware for a Linux box. Maybe later this year.
I simply like forth. All the other languages to me are at best a necessary
evil!
Kind regards
Richard
…_____
From: Thomas [mailto:notifications@github.com]
Sent: Saturday, 27 January 2018 9:02 PM
To: TG9541/stm8ef
Cc: Richard; Author
Subject: Re: [TG9541/stm8ef] Word Digit appears to be missing from 2.2.21
(#152)
Hi Richard,
first of all, thanks for pointing out that the whole Alias stuff needs a
better explanation.
I updated the Using Alias
<https://github.com/TG9541/stm8ef/wiki/STM8-eForth-Alias-Words> Words Wiki
in the hope of making this more accessible.
Could you please check if the concept is sufficiently understandable? I
would also appreciate a recommendation on where to point users to the
"missing words", and hear your opinion on e4thcom and codeload.py.
Kind regards
Thomas
-
You are receiving this because you authored the thread.
Reply to this email directly, view
<#152 (comment)> it on
GitHub, or mute
<https://github.com/notifications/unsubscribe-auth/AT7ya_x3tzxNZoG3KMybHsR8M
pbyAckcks5tOx4qgaJpZM4RstVv> the thread.
<https://github.com/notifications/beacon/AT7ya8c67jr8qhcpu3UqVTy7LqBSIt7Kks5
tOx4qgaJpZM4RstVv.gif>
|
Hi Richard, I'd like to propose the following:
This would accommodate both use cases, "basic interactive Forth programming", and "assisted interactive Forth programming". As for e4thcom: I agree that for simple applications Windows-XT and Hyperterm is fast, simple, and very usable. However, booting an old Pentium 90 PC to a Linux console, and running e4thcom on it, would be even more lean and simple (e4thcom is Forth based). Kind regards, |
I tried adding full dictionary as aliases (it was actually a 5 minutes hack) - the binaries are here: W1209-fulldict.zip The aliases require 550 bytes memory, but they can be removed by
|
Hi Thomas,
I got my head around what was achieved with the Alias words. As a result I
made a few edits to the wiki which I hope you find useful. Fortunately I
doubt I will ever run out of flash now.
Kind regards
Richard
|
Hi Richard, I had a look at the changes - I like a lot that you write about ALIAS from the user perspective! Thanks! By the way, ALIAS dictionary entries, unlike normal words with executable code, can reside in EEPROM memory. I didn't try it but it should be possible to free up even more Flash memory! |
Tried the latest binary today for my WD1209-FD testing. Found that the word "digit" is no longer in the pre-compiled binary. Which is odd because the forth.asm file in the master shows the entry. (Line 2860)
The text was updated successfully, but these errors were encountered: