Introduction
Introduction Statistics Contact Development Disclaimer Help
article-tgtimes-Embedded-Forth-Programming.mw - tgtimes - The Gopher Times
git clone git://bitreich.org/tgtimes git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws…
Log
Files
Refs
Tags
README
---
article-tgtimes-Embedded-Forth-Programming.mw (5994B)
---
1 .SH tgtimes
2 Embedded Forth Programming
3 .2C 10v
4 .
5 .PP
6 Big computers can run large and complex programming languages,
7 so what can small computer run?
8 .
9 .PP
10 Compiled languages, in particular those with a small runtime are often c…
11 But the interpreted languages also have an audience willing to code with…
12 Programming languages as big as Python have their embedded counterpart (…
13 They serve their purpose to embedded enthusiasts as educational and scri…
14 .
15 .PP
16 But small "language in a nutshell" are fitting right the small resources…
17 This is the case of Forth and its stack-machine approach.
18 .
19 .1C
20 .
21 .IP Mecrisp Forth - http://mecrisp.sourceforge.net/
22 This implementation immediately targets microcontrollers.
23 See for instance the work of librehacker.com author Christopher Howard.
24 .FS
25 gemini://gem.librehacker.com/gemlog/tech/20220331-0.gmi
26 gemini://gem.librehacker.com/gemlog/tech/20220305-0.gmi
27 .FE
28 .
29 .IP chipFORTH
30 Another implementation of Forth, which were used by NASA
31 .FS
32 https://www.forth.com/space-shuttle-instrumentation-interface/
33 .FE
34 for improving reliability of its flight control system,
35 among the mosts critical pieces of software of a shuttle.
36 .
37 .IP https://github.com/corecode/forth
38 Among notable Forth projects is Simon "corecode" Schubert's nimble forth…
39 as well as hardware code describing the working of a CPU that executes F…
40 .FS
41 https://github.com/corecode/forth-cpu
42 .FE
43 .
44 .IP https://forth.chat/
45 If feeling like having a taste of Forth and Forth community, there are s…
46 featuring forth that you could enjoy,
47 some of which are oriented toward hardware projects directly
48 .FS
49 ircs://irc.hackint.org/#forth-hardware-projects
50 .FE.
51 .
52 .IP https://github.com/chmykh/apl-life
53 This is Conway Game of Life in APL in Forth
54 What a long chain! It is APL programming language implemented in Forth,
55 and Conway game of life implemented in APL
56 .
57 .IP https://github.com/remko/waforth
58 Feeling like pushing the irony of "Web" assembly even further?
59 Why not blasting a Forth implementation at it?
60 .FS
61 https://el-tramo.be/waforth/
62 https://el-tramo.be/thurtle/
63 .FE
64 This proves Forth as the new programming language \fIen vogue\fR
65 .
66 .IP http://collapseos.org/
67 What else does a programming language need to prove itself useful?
68 A kernel? Check!
69 Collapse OS
70 is an operating system targetting resilience beyond extreme,
71 as it is designed to resist everything around it tearing apart,
72 including the whole civilisation.
73 When nothing remains but wastelands,
74 CollapseOS will be there for a rebirth of civilisation out of computers …
75 Civilisation is rising and falling all of the time, just not all parts a…
76 .
77 .QP
78 Forth is, to my knowledge, the most compact language allowing high level…
79 .
80 .IP "gopher://retroforth.org/ https://retroforth.org/"
81 A forth implemented in C, Python, C#, Nim, JavaScript and Pascal!
82 The C version permits to embed the script into a binary along with the i…
83 for a single-binary deployment process.
84 The more classic way to use it is to use shebangs scripts to have execut…
85 .
86 .PP
87 Many smaller utilities can already provide something you needed:
88 .
89 .IP http://retroforth.org/examples/Casket-HTTP.retro.html
90 An HTTP server
91 .
92 .IP http://retroforth.org/examples/Atua-WWW.retro.html
93 A Gopher to HTTP+HTML Proxy on top of Atua.
94 .
95 .IP http://retroforth.org/examples/Atua.retro.html Gopher server
96 A gopher server, already listed on the Gopher index of links, the Gopher…
97 .FS
98 bitreich.org/1/lawn/c/gopher.gph
99 .FE
100 .
101 .IP http://retroforth.org/examples/7080.retro.html
102 A s
103 .
104 .IP https://gitlab.com/goblinrieur/spreedsheet/
105 A spreadsheet application in the terminal.
106 .
107 .IP gopher://forth.works:100 http://forthworks.com/
108 This is a collection of code blocks written in the Retro Forth's author …
109 It is itself served by a gopher server (blocks 203-205 on the list above…
110 .
111 .IP https://github.com/oriontransfer/pl0-language-tools
112 A PL/0 implementation in Python that can emmit Retro Forth code as ouput.
113 It looks like Forth simplicity, portability, stability and speed of exec…
114 The PL/0 language is known for the book \fIAlgorithms + Data Structures …
115 from Niklaus Wirth, himself famous for the Wirth Law:
116 .
117 .QP
118 The hope is that the progress in hardware will cure all software ills.
119 However, a critical observer may observe that software manages to outgro…
120 -- https://en.wikipedia.org/wiki/Wirth's_law
121 .
122 .IP https://ribccs.com/candy/
123 If you were doubting about Forth being fit for the industry, bear in min…
124 a very-large scale VFX Forth project with over a million lines of code!
125 .
126 .IP http://sam-falvo.github.io/kestrel/2016/03/29/vibe-2.2
127 Why not spin a vi-like text editor itself in forth?
128 See how few code it takes to implement one.
129 .
130 .IP https://git.sr.ht/~vertigo/shoehorn
131 An answer to the bootstrapping problem: how to get from no software to a…
132 Which compiler compiles the first compiler?
133 Forth's simplicity is a good candidate for solving this problem.
134 .
135 .IP https://git.sr.ht/~vertigo/forthbox
136 Software environment for computers to base upon right after booting:
137 a system shell in forth with real hardware projects dedicated to it.
138 Think of a LISP machine, but instead being a Forth machine.
139 .
140 .IP http://deathroadtocanada.com/
141 This video-game uses Forth as a scripting language.
142 When a whole scripting language fits on a thumb, putting it everywhere c…
143 .
144 .2C 4v
145 .
146 .PP
147 Such a large tool chest for such a small language.
148 With the Covid, Wars under disguise, and other supply chain troubles,
149 the demand of feature stability rises face to the traditionnal "more fea…
150 In these trying times, anyone is welcome to go Forth.
You are viewing proxied material from bitreich.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.