Erich Wälde writes:
> Enoch,
>
>
> Enoch writes:
>
>> writes:
>>
>>> Enoch,
>>>
>>>
>>> I repeat, I am not going to get into a licensing debate with anyone, but I
>>> believe I have satisfied the GPLv3 requirements.
&g
writes:
> Enoch,
>
>
> I repeat, I am not going to get into a licensing debate with anyone, but I
> believe I have satisfied the GPLv3 requirements.
>
>
> DaR
>
I don't question your compliance Dennis, I leave that task to the
copyright holder :-)
Unfortunate
Dennis,
I would like to caution you that AmForth nowadays is GPLv3, i.e., "most
toxic" :-)
I forked AmForth and continued with my independent AmForth-Shadow
development when Matthias made the switch from GPLv2 to GPLv3. My new
stuff is FreeBSD like licensed.
Cheers, Enoch.
https://
still frustrating for you then I will stop writing to this mailing list.
>
> --Steve
Hmm...
I think that new users of standrd platforms, such as Arduino Uno R3, are
entitled to expect the availability of AmForth binaries to get them
started immediately.
Can't someone here with a worki
Interrupt Service Routines (ISRs) by introducing
delayed execution words.
An ISR, for example, before it ends can schedule continued activity
after a desired number of milliseconds.
See elist ( delay value xt -- error-flag ), etc.
I trust to have your interest.
Thanks, Enoch.
P/S AmForth-Shadow is an
le continued activity after a desired number of
milliseconds.
I trust to have your interest.
Thanks, Enoch.
--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and develope
Hi Jeff,
Did you model your AmForth USB support (host mode I presume) on some
known API? Do you have a public repository for this project?
Thanks, Enoch.
Jeff Rosenwald writes:
>
>
>
>
>
>
> -Original Message-
> From: Jeff Rosenwald
> To: jeffrose
need to serve in a "mission critical" system using common
real-time programming methods (e.g., Second Level Interrupt Handlers).
Let me wish Matthias a happy AVR8/MSP430 marriage, a path The Shadow
will not follow.
Regards, Enoch.
On 12/22/2014 12:59 PM, Matthias Trute wrote:
> Hi
Marrying a von Neumann architecture (MSP430) with a Harvard architecture
(AVR8)... Hope the offspring would come out normal :-)
Good luck, Enoch.
--
Matthias Trute writes:
> Hi John and Brad,
>
>> This cross
be no merging of code or
documentation from AmForth further to
svn://svn.code.sf.net/p/amforth/code/trunk@1687 which announced its
change of license.
Let me end this message with the hope that the advantages of competition
in the AmForth* arena will outweigh its downside.
Thanks, Enoch.
P/S So
Andreas Wagner
writes:
> I, for one, welcome this change. It will make it possible to use code from
> gforth in amforth projects.
>
> Enoch, if you can't live with the license change, you might consider
> asforth ( https://github.com/nfz/asforth ) a subroutine threaded fork
ss of your project and thus, I consider this to be basic courtesy.
>
> Sorry, you're right. So the formal request: I intent to change the
> license from GPLv2 to GPLv3. Details are available at www.fsf.org
> The reason is that I intent to include a major GPLv3 licensed
> code bas
mForth from trunk@1687 onward will never be used in any
commercial product, nor would it ever be the choice of any law abiding
professional developer (aka consultant). If this is what you want to
accomplish -- good luck, if not -- reconsider your move.
AmForth-Shadow <https://github.com/wexi/a
don't undertstand why you are not providing this
feature through a command line option.
Sincerely, Enoch.
--
___
Amforth-devel mailing list for http:
Hello Matthias,
Matthias Trute writes:
> Hello Enoch,
>
>> To extend #require over amforth-shell.py sessions simply add data
>> persistence to "self._uploaded = set()".
>
> Sounds good. If the storage is something that can identify
> a particular con
Hello Matthias,
To extend #require over amforth-shell.py sessions simply add data
persistence to "self._uploaded = set()".
See https://docs.python.org/2/library/persistence.html
It would be much simpler.
Enoch, Your faithful shadow.
P/S "spying on developers" was
e
tests to uploaded-wl existence are annoying.
Sincerely, Enoch.
--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Rea
nce then I implemented the same by my own divide by 64
"63 m* _div64 \ attenuate by × 63/64" but this "*/" word is fundamental.
gforth:
-128 63 64 */ . -126 ok
amforth:
> -128 63 64 */ .
-1 ok
Thanks, Enoch.
-
-128 63 64 */ . -126 ok
amforth:
> -128 63 64 */ .
0 ok
Hmm...
Regards, Enoch.
Matthias Trute writes:
> Hi Enoch,
>
>> I am pleased to advise that I managed "to marry" in amforth-shadow (#1)
>> Multitasking with Soft-Interrupts (#2) and have the advan
clude some
of my code into your project.
Sincerely, Enoch.
#1 https://github.com/wexi/amforth-shadow
#2 aka Second Level Interrupt Handling (SLIH)
--
4 lib/tasks.frt
This is a major rewrite of lib/multitask.frt that is compat
lease be advised that such code
exists in amforth-shadow repository <http://tinyurl.com/ldkuouw> and
waiting for some day inclusion into AmForth HQ by its BDFL :-)
Regards, Enoch.
Paolo Garro
writes:
> Hi Matthias,
> I'm writing a wxpython GUI for AMforth.
> It's a ser
Sorry Matthias,
My mistake, it does check for zero length move.
Thanks, Enoch.
Matthias Trute writes:
> Enoch,
>
>> I believe that our cmove implementations require a test for zero length
>> move. Currently they don't.
>
> And here is what a small test gives
>
Hello Matthias,
I believe that our cmove implementations require a test for zero length
move. Currently they don't. Here's what RC2 says:
"""
17.6.1.0910 CMOVE “c-move” STRING
( c-addr1 c-addr2 u -- )
If u is greater than zero, c
ry newcomer to AmForth would expect that
(preferably using the picture format).
Regards, Enoch.
--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM
d luck, Regards, Enoch.
--
Matthias Trute writes:
> Hi,
>
> Its revealed prematurly (my dear friend Enoch, tss),
> but now its good enough for a real annoncement: Recognizers
> for all. The basic idea is no
Hello Matthias,
Can you please provide the URL to that RFD covering recognizers:
"Renamed to follow RFD Draft".
Once things settle I'll try to fix Leon's floating point library. It's
there where the problem lies, i.e., re
Thanks, Enoch.
--
Time is money. Stop wasting it! Get your web API in 5 minutes.
www.restlet.com/download
http://p.sf.net/sfu/restlet
___
Amforth-devel mailing list for http
Michael Kalus
writes:
> Hi.
>
> Never split a winning team :-)
> Michael
>
No fear, one can't separate a man from his shadow ;-)
Regards, Enoch.
>
> Am 18.05.2014 um 20:38 schrieb Matthias Trute:
>
>> Hi Enoch,
>>
>>> I understand the re
". However, you have created
another forward reference warning, an unnecessary annoyance to a
diligent programmer:
macros.asm refers to RAMEND which is introduced only later through
device.asm.
Regards, Enoch.
--
.
>
> Cool. I've never changed the settings away from 8N1 ;)
> Thank you for testing. Fixed in rev 1579
I consider this new line an annoyance:
+.warning "The warning regaring XT_NOOP beeing undefined can be ignored"
Hello Matthias,
Please note this new build error:
rww.inc(2): error: Illegal use of undefined or forward referenced symbol
'AMFORTH_NRWW_SIZE' in conditional
This symbol is now defined nowhere.
Thanks, Enoch.
---
)
Here's your shadow version in case I am wrong:
http://pastebin.com/r8wWiBYh
Cheers, Enoch.
--
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
• 3 signs your SCM is hindering your produ
tly, this would still
> be a violation of the GPLv2.
>
Hi Andreas,
Let's agree to disagree; FYI, my client had consulted a patent attorney.
As for amforth-shell.py --conceal option, it is now replacing names with
base62 numerals so the code is even more compact.
Cheers, Enoch.
>
>
variable ^^8
variable ^^7
variable ^^6
variable ^^5
: ^^68
dup @ 63 um* 64 um/mod
swap 31 > if 1+ then
&120 @ +
swap !
;
No starting of a (un)holy wars please! Do understand that if we wish to
make AmForth into anything but a toy we should consider these issues.
Thanks, Enoch.
P/S
A side
Hello Matthias,
Matthias Trute writes:
> Enoch,
>
>> In trunk@1566 you wrote in NRWW.rst that "Furthermore the NRWW section
>> cannot self reprogram itself." That isn't true at least on my current
>> micro (at90can128). The MCU simply freezes when wr
> > { 1 1 +-> 2 }
>ok
> > { 1 1 plus -> 2 }
>ok
> > { 1 1 plus -> 3 }
> INCORRECT RESULT: { 1 1 plus -> 3 }
>ok
> > { 1 2 plus -> 3 }
>ok
> > { $ 1 plus
gt; NRWW_START_ADDR
+.include "dict/appl_4k.inc"
+.exit
+.endif
In the remaining core space I pack via dict_appl_core.inc application asm
words and additionals from the core.
Sincerely, Enoch.
--
Start Y
to pack as much as possible
code into the core I have to disagree with your static (mcu dependent)
allocation method. Instead, a simple macro call ahead of each included
asm could have achieved just the same, a macro that checks the "pc"
dist
d to load BOOFA into the core space too),
Thanks, Enoch.
--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Writte
Hello Mattias,
Matthias Trute writes:
> Hello Enoch,
>
>> Apologies for my insistence but couldn't you achieve the same objective
>> of packing as many words as possible into the core via a macro call at
>> each word that examines the current "pc" again
Enoch writes:
> Matthias Trute writes:
>
>> On Mo, 2014-04-07 at 15:26 -0400, Enoch wrote:
>>> Hello Matthias,
>>>
>>> Matthias Trute writes:
>>> > [complaints..]
>>> >
>>> > Why do you complain? I did not chan
Matthias Trute writes:
> On Mo, 2014-04-07 at 15:26 -0400, Enoch wrote:
>> Hello Matthias,
>>
>> Matthias Trute writes:
>> > [complaints..]
>> >
>> > Why do you complain? I did not change that much at all. Your
>>
>> Your chang
)
> boofa is still possible and not worse to add then before.
> And all other users will benefit from a lot more code space for
> their (forth) programs.
>
> I updated the template/dict* files with some words of wisdom.
Thanks,
Enoch writes:
> Re: "Preload as much as possible to NRWW section without user
> configuration. There are 3 different sizes for the NRWW section: 2K,
> 4K and 8K. For all a pre-selected set of words are included to
> maximize the free space for user programs.&q
t you will try to minimize the impact of your
development changes on user applications.
Today I notice significant changes to appl/template/dict_appl.inc. For
example, a new ".include "words/built.asm"
Please explain your changes at a greater length than the above SV
ish to combine Python + AmForth fun I suggest adding
to Keith Amidon's amforth-shell.py interactive terminal
capabilities. Python THREADING module is suggested to handle the common
serial I/O and CURSES is suggested to easily implement a 25x8
'll see.
> -Leon
Hi Leon,
Can you give your github float library a test with the latest AmForth
release. It does not seem to work:
> pad 10 accept pad swap >float .s
0.15625
#3 0 0 -1 ok
That's wikipedia's example <h
y won't bother
>> > with a project that isn't using git.
>> >
>> > Andreas
Like the previous three commenters I prefer too "The Bazaar" development
model; Matthias presumably prefers to live in "The Cathedral" :-)
With a click of a
s,
Leon's included floating point library seems outdated. FYI, he
maintains an independent repository at:
https://github.com/lnmaurer/amforth-float.git
IMO, his library is the kind of code that people expect to be included
in amforth main (hardware independent, general applicability).
Sincer
lshit
>
> I aplogize, I dont want to be rude, Enoch.
No need, I am aware that my "shadowing you" can be considered an
annoyance, but it's good for the project.
> Your analysis is wrong.
Yes, understoo
ok
Only with a serial driver (and a matching computer terminal setting)
which implements RTS/CTS handshake (or at least software xon/xoff) you
can be sure that characters don't get dropped.
I offered a patch for AmForth but Matthias needs further convincing :-)
Thanks, Enoch.
P/S When prog
ay, as an old C programmer I don't feel comfortable replacing
#include with #require :-)
Thanks, Enoch.
P/S Not that it has any significance, I was the one to have suggested
and implemented the conditional shell inclusion directive.
---
ng. You
don't want to cache in RAM the memory allocation pointers (EEPROM based
DP, HERE, EDP), it's fine with me, I'll do mine the "EESY" way :-)
AmForth is your toy, AmForth-Shadow is my derived sandbox. Long live OSS.
Regards, Enoch.
-
Erich Waelde writes:
> Folks,
>
> On 02/18/2014 10:08 PM, Enoch wrote:
>> Hannu Vuolasaho writes:
>>
>>> First thing about topic.
>>>
>>> The language which you rae using is forth. it is obfuscated already to 99%
>>> of people. :)
>
Sam Putman writes:
> On Tue, Feb 18, 2014 at 9:11 AM, Hannu Vuolasaho wrote:
>
>> First thing about topic.
>>
>> The language which you rae using is forth. it is obfuscated already to 99%
>> of people. :)
>>
>> Secondly it would be sad to lose Enoch
Hannu Vuolasaho writes:
> First thing about topic.
>
> The language which you rae using is forth. it is obfuscated already to 99% of
> people. :)
>
> Secondly it would be sad to lose Enoch from community who has given quite
> many ideas.
>
> Thirdly about GPL.
>
h, I think, a
detriment to the users.
At least you liked my wordlist scope idea ;-)
Sincerely, Enoch.
writes:
> Matthias,
>
>
>
>
> I am new to this list, so you can ignore me as you like, but I have been
> around this industry for a very long time. I have discusse
er to disclose
his/her underived and independent code Linux would not have become so
popular at the core of commercial products as it is...
Just as Sam said, saving code space or feeling no guilt when using long
running words is a good enough reason.
Sincerely,
forgetting the latter.
I must say that there is an element of Flash space saving in this
suggestion too.
What's your opinon?
Thanks, Enoch.
P/S Let's start no GPL wars here. I'm not talking about code falling
under the GPLv2 license.
-
Hello Matthias,
Trying to merge your repository:
git-svn-id: svn://svn.code.sf.net/p/amforth/code/trunk@1517
fd1c0b69-5d68-47f5-910c-86182ebb6ecd
We seem to miss this definition:
enoch@dome:~/avr/amforth$ grep -re "XT_STORE_EE_ARRAY" *
core/words/set-recognizer.asm:.dw XT_STOR
to contribute. See below. I suggest to
include it in the kernel.
Sincerely, Enoch.
--
\ LIFO made FIFO
\ ( X1 .. Xn n -- Xn .. X1 n )
: reverse
>r
sp@ sp@ r@ cells + \ ( bot-addr top-addr )
be
WORDS1
PFA_ALLWORDS2:
.dw XT_EXIT
Thanks, Enoch.
(*)
I want the shell to know all words, not just those at the head of the
search order. I am using multiple wordlists.
--
Androi apps run on BlackBerry 10
Introducin
Matthias Trute writes:
> Hi,
>
> Jens wrote a TCP/IP stack for amforth (probably the first FOSS
> stack written in forth). The code is now in the
> trunk/appl/eval-pollin directory.
Not the first yet much appreciated.
See http://code.metager.de/source/xref/openfirmware/ofw/inet/
Hello Matthias,
Please note that there are two instances in lib/ans94/core that still
use imove. Please grep.
What's the background to this change? May I make a wild guess... you're
in the midst of implementing Anton Eartl's "Standardize Strings Now!
ng, with
> potentially heavy runtime costs (unless a special wordlist is used).
Mitch Bradely forward implementation (in openfirmware) is no trivial
either. Thoughts:
+ Let this "found only forward declaration" throw an exception instead
that can be dealt with programmatically, for exa
e. I have lots of mutually recusive word definitions like:
: A ... ; \ calls B
: B ... ; \ calls A
and spending one Edefer per each plus another indirect runtime level is
unacceptable. I can live with my current hack whic
Forth Forth Root Forth ok
Vocabulary gives a name to a wordlist yet AmForth lacks this capability.
Is it important? No, but I see the advantage for someone doing lots
of interactive coding.
Regards, Enoch.
--
Centur
Hi Matthias,
Matthias Trute writes:
> Hi Enoch,
>
>> Shouldn't ALSO be corrected as follows:
>
> ANS94 has in section 16.6.2.0715 ALSO the following specification
>
> "Transform the search order consisting of widn, ... wid2, wid1 (where
> wid1 is searched f
er
16
1 16 ok
> wordlist constant liby
ok
> only also liby
ok
> order
16
2 86 16 ok
Thanks, Enoch.
--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are C
forgetting "foo" after it has been
resolved-to...
Just as usual, the core idea is simple and straightfowrd (as shown
below), the general one quite a challenge.
Thanks, Enoch.
-
\ (one-at-a-time) simple forward refe
with mutual
recursion without resorting to multiple Edefer's.
If you like this approach of eliminating defers (at compile time) we can
develop it further. Naming is also temporary, it is influenced by C/C++,
etc.
Regards, Enoch.
-
rst1 " forth& ;
\ : second1 ." second1" &back& ;
\
\ : first2 ." first2 " &forth execute ;
\ : second2 ." second2" &back& ;
Comments or is this "cookbook grade" :-)
Thanks, Enoch.
--
Hello Matthias,
Your new extended VM words are interesting. Yet, they are not in the
emerging 200x standard, not in gforth, not in SwiftForth. Is the reason
they did not become popular because they are for a-addr memory access
(cell) rather than the more natural c-addr (byte) ?
Thanks, Enoch
Hi Matthias,
Matthias Trute writes:
> Hi Enoch,
>
>> I'm confused, please explain how this works...
>
> See my last mail, the code does (should do)
> exactly what I described there.
>
>> Aren't we supposed to patch the Edefer caller, not its callee?
&
hi
> \ ' ver is hi
> \ ' hi defer:seal
>
> : defer:seal ( XT -- )
> dup defer@ swap
> dup ['] quit @i ( get DO_COLON) swap !i
> 1+ dup rot swap !i
> 1+ ['] exit swap !i
> ;
I&
Hello Matthias,
Matthias Trute writes:
> Hi Enoch,
>
> My recent changes were a code compacting, since defers and values are so
> close to each other.
>
>> May I suggest a new defer object, say, "FFdefer" that would be implemented
>> like "Edefer&quo
hat if a certain global boolean, say, FastForward, is
set then the first "xt_FFdeferfetch" execution will reprogram itself
out by changing the calling code.
Implmenetation is not difficukt but let me claim for now what Ferma (the
mathem
mple AVR109 compatible operation (I doubt if any of them
is using Forth :-) As they refused to integrate BOOFA in their
project, what seems to me so natural, I set up the repository here:
https://github.com/wexi/boofa.git
Please note that Matthias provided a definition that
Matthias Trute writes:
> Hi Enoch,
>
>
>> Your latest commit to "Speed up defers. And save some code space."
>> breaks my _private word list _scope. Compliation hangs. I am sure
>> you'll figure out why faster.
>
> Took me 10 Minutes. Beat this
Hello Matthias,
Your latest commit to "Speed up defers. And save some code space."
breaks my _private word list _scope. Compliation hangs. I am sure you'll
figure out why faster.
TIA, Enoch.
-
wordlist constant _pri
craig and heather
writes:
> Enoch
>
> If that is the case then it is impossible to comment out code if you have
> embedded stack diagrams in it. That results in nested comments which are
> illegal.
>
> I guess I'm back to trying to add multi line comments with my own
|
|S| 11|2 2 + .
|O| 11|4
Regards, Enoch.
craig and heather
writes:
> Enoch,
>
> I just tried out multi line comments for the first time using the shell and
> it doesn't seem to work as I would expect.
>
> Here is a little bit of the code I am working on
>
> \
the above via a simple terminal emulator the code still
works as the constant PORTE will get created.
Regards, Enoch.
craig and heather
writes:
> I know I will probably get flamed for wanting multiline comments but I think
> they are really handy when writing / debugging code.
>
>
up would be happy to do
the lobbying for you.
Keep up the good work. The Season's Greetings!
Enoch.
--
Rapidly troubleshoot problems before they affect your business. Most IT
organizations don't have a clear
Hello Erich,
Erich Waelde writes:
> Hi Enoch,
>
> On 12/19/2013 03:25 PM, Enoch wrote:
>> Hello AmForth-ers:
>>
>> I don't think that people look for speed when considering any Forth --
>> modern optimizing C compilers will do better.
>>
>>
nly. Let's start with a common construct such as the "do
... loop" (words/do.asm).
It can be a group effort if Matthias encourages :-)
Sincerely, Enoch.
Matthias Trute writes:
> Hello,
>
>> Has there been any thought about optimizer?
>
> A lot. And a lot of discuss
t you are trying
to accomplish I could have been of help :-)
Regards, Enoch.
--
Rapidly troubleshoot problems before they affect your business. Most IT
organizations don't have a clear picture of how applicati
VALUEs
435621c * New internal API for values.
Thanks, Enoch.
--
Rapidly troubleshoot problems before they affect your business. Most IT
organizations don't have a clear picture of how application performance
af
Hi Matthias,
Matthias Trute writes:
> hH Enoch,
>
>> ... to cache EEPROM values in RAM. Two questions:
>>
>> 1. Will you apply this soon to "here"?
>
> pick at least one of the following
>
> Nostradamus allegedly said, “Prediction is
>diff
EEPROM on
start-up, at will sync with the EEPROM ["eesy" :-)] that would be a
significant development.
Thanks, Enoch.
--
Rapidly troubleshoot problems before they affect your business. Most IT
organization
-)
Cheers, Enoch.
David Wallis
writes:
> Just solved a problem that's been ticking over in the back of my mind for
> weeks, and that has a blindingly obvious solution. Apologies if this is
> what people are doing routinely, but it didn't occur to me straight away
> and
obar to please
you.
> the shell already got a huge number of command line options, so one
> more should not hurt that much.
Please give some thought to the best way to lower the number of EEPROM
rewrite cycles of the pointers. For example, why would we disallow a
loop with an infinite
set TOOLS=%AMFORTH%\tools
set AMFORTH_LIB=.:%AMFORTH%\lib
C:\Python27\python.exe %TOOLS%\amforth-shell.py -p COM8
... but on Linux it's so much more fun (for a programmer, I mean).
Sincerely, Enoch.
--
Sponsored by
nclude files are really cool features.
>
> Thanks a bunch Keith
Joining your salute, Enoch.
As I am fluent in Python I am responsibile for the latest patches. A
meta command change that I hope Matthias picks relate to #include and
#install. Here's the diff between my amforth-shadow and
Erich Waelde writes:
> Hi,
>
> On 11/24/2013 07:13 PM, Enoch wrote:
>> Dear Matthias,
>>
>> I understand that Mikael ("FlashForth") represents "the competition" but
>> his point, in my opinion, cannot be ignored. All those frequently
>>
mforth-shadow in the hope that the boss would
change his mind :-)
Cheers, Enoch.
P/S Minimizing the number of EEPROM erase cycles is a worthy cause.
--
Shape the Mobile Experience: Free Subscription
Software experts and
s say "eesy" (EEPROM sync), would do the RAM to EE
sync. To be on the safe side let tools/amforth-shell.py issue this
"eesy" for us automatically before exit...
Sincerely, Enoch.
Enoch writes:
> Mikael Nordman
> writes:
>
>> Hi Wojtek,
>> Just to infor
suit.
The change seems trivial, a simple rewrite of words/dp.asm, etc.
I like the recent interest in simavr as a standard devel platform.
Can it be used to benchmark, say, AmForth vs. FlashForth?
Thanks, Enoch.
--
Shape
"
> situation too. Perhaps with a prompt change too.
>
> Better ideas welcome ;)
I suggest simply changing read_response(self) in amforth-shell.py to
echo characters while waiting for "ok".
Regards, Enoch.
>
> Matthias
>
>
> ---
C architecture. Even nicer would be to have just one
version to include and deal with the differences via compile time code
manipulation (but we don't have working [if] [else] [then] yet).
Thanks, Enoch.
--
November Webina
1 - 100 of 245 matches
Mail list logo