
PunyForth programming language for the ESP8266 - type0
https://github.com/zeroflag/punyforth
======
CamTin
One thing I really want for the ESP8266 is REPL-over-WiFi with persistence.
MicroPython doesn't seem to have this AFAICT and from the docs Forth doesn't
either. Does anybody know of an environment for the 8266 that has a feature
like this? I don't really care if the language is Forth or Lisp or Python, but
I'd like to be able to modify a live running environment on an embedded device
over the network.

~~~
kbr2000
Hey, you can access the PunyForth over a TCP session (as implemented here:
[https://github.com/zeroflag/punyforth/blob/master/arch/esp82...](https://github.com/zeroflag/punyforth/blob/master/arch/esp8266/forth/tcp-
repl.forth)). Not sure what you mean with "persistence", you can write to
memory in one session, and read back in another? Or are you talking about the
stack here?

EDIT: swapped for correct URL

~~~
CamTin
I mean that I would like the running image I am building in Forth to persist
in non-volatile storage (so if I power the device off and back on, the program
remains). Is this possible?

~~~
kbr2000
Sure thing, read this: [https://github.com/zeroflag/punyforth/wiki/Developing-
and-de...](https://github.com/zeroflag/punyforth/wiki/Developing-and-
deploying-Punyforth-applications)

~~~
CamTin
This is fantastic! I'll be flashing this on one of my Wemoses tonight!

------
msarnoff
If you're not into the ESP8266, there are some good Forth implementations for
other types of microcontrollers:

ARM Cortex-M0/M3/M4/M7 (STM32, Teensy, etc.) and TI MSP430: Mecrisp-Stellaris
- [http://mecrisp.sourceforge.net](http://mecrisp.sourceforge.net)

Atmel 8-bit AVR: AmForth -
[http://amforth.sourceforge.net](http://amforth.sourceforge.net)

~~~
kbr2000
Indeed! Here's two other ones that proved useful and interesting to me:

ARM7/9 types (Cortex like STM32, several NXP LPC, ...): Riscy Pygness -
[http://pygmy.utoh.org/riscy/](http://pygmy.utoh.org/riscy/)

Microchip PIC18/24/30/33 and Atmel Atmega: FlashForth -
[http://www.flashforth.com/](http://www.flashforth.com/)

Enjoy!

