TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Forth vs Lisp

120 pointsby monologicalover 3 years ago

16 comments

eatonphilover 3 years ago
It&#x27;s about as fun and easy to implement a simple thing that looks like a forth as it is to implement a simple thing that looks like a lisp. But that&#x27;s where the ease of forth ends for me.<p>I find forth basically impossible to read even when, at best, authors leave a comment on basically every 1-2 words. Writing it is pretty hard too.<p>In contrast it&#x27;s about as easy to be productive in a lisp (CL or Scheme) as it is in Python or JavaScript (give or take useful 3rd party libraries).<p>Even if they&#x27;re from the same time period and are interesting for being not very Algol-like, I don&#x27;t think it makes a lot of sense to discuss Forth and Lisp in the same conversation. They were both improvements on very different things.
评论 #29259899 未加载
评论 #29259838 未加载
评论 #29259383 未加载
mikewarotover 3 years ago
As someone who has written a forth, and knows a tiny sliver of what lisp can do, the huge difference is that Forth can&#x27;t deal with arbitrary data structures in anything close to the ease of Lisp. If you want to ingest a chunk of source code, tokenize, parse and put it all in an abstract syntax tree, you&#x27;re far better off doing it in lisp.<p>Forth doesn&#x27;t really do data structures. Stoical is a forth variant that did, but it died out.
评论 #29260812 未加载
评论 #29259625 未加载
spc476over 3 years ago
Is there anyone else having issues reading the site? I&#x27;m using the latest version of Firefox, and I get:<p><pre><code> This site uses features not available on older iPhones. </code></pre> I&#x27;m interested in reading the site, not editing it. I&#x27;m already using a web browser, I don&#x27;t need to download one written in dodgy Javascript. Sigh.
评论 #29263417 未加载
评论 #29263319 未加载
lizknopeover 3 years ago
I remember using some Sun workstations in the 1990&#x27;s. They Open Firmware boot system used Forth. It was also used for PowerPC Macs but I never had any of those.<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Open_Firmware" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Open_Firmware</a>
评论 #29260191 未加载
评论 #29259259 未加载
评论 #29260524 未加载
评论 #29259198 未加载
评论 #29259955 未加载
macintuxover 3 years ago
As someone who has only <i>barely</i> dabbled in either, they feel very similar in philosophy, but I understand that&#x27;s superficial to some degree.<p>I have a particular soft spot for Forth in part because W. Richard Stevens (RIP) wrote a primer for Kitt Peak National Observatory:<p><a href="http:&#x2F;&#x2F;www.forth.org&#x2F;KittPeakForthPrimer.pdf" rel="nofollow">http:&#x2F;&#x2F;www.forth.org&#x2F;KittPeakForthPrimer.pdf</a> (PDF)
评论 #29259607 未加载
rbanffyover 3 years ago
It was with Forth that I learned to build up the language until solving the problem becomes trivial.<p>Of course, this can be done with any language, but Forth and Lisp make it look natural.
User23over 3 years ago
I&#x27;m quite familiar with many Lisp dialects, including Emacs Lisp, Common Lisp, and Clojure, and I&#x27;m moderately familiar with Scheme too.<p>I&#x27;m not a stranger to other outside the mainstream languages like OCaml and Haskell.<p>However, every time I&#x27;ve tried Forth I&#x27;ve bounced off it hard. Has anyone here had a similar experience and managed to overcome it? I really want to learn Forth because I believe learning new paradigms makes me a better programmer and it&#x27;s also fun. So how can I make learning Forth fun?<p>And on a tangent, it&#x27;s nice to see posts from the original Wiki. I spent a lot of time on that site a couple decades ago.
评论 #29260848 未加载
评论 #29260400 未加载
dangover 3 years ago
One old thread:<p><i>Forth vs Lisp</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=2243877" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=2243877</a> - Feb 2011 (15 comments)
joe_the_userover 3 years ago
The upshot of the discussion seems to be that the definitions of a Lisp and a Forth are so orthogonal that one person correctly say &quot;most lisps have no relations to forth and vice versa&quot; and another can correctly say &quot;look, a lisp that&#x27;s also a forth&quot;.<p>How conceptual orthogonality works.
zerrover 3 years ago
Any reasons to code in Forth these days, besides intellectual exercise?
评论 #29260832 未加载
评论 #29258894 未加载
评论 #29260170 未加载
sneeeeeedover 3 years ago
X86 forth is brilliant. I just got the GA144 dev board - I have a product in mind and I used several forths in the last year. X86 forth among them.
shaunxcodeover 3 years ago
Or you could have the best of both worlds: <a href="https:&#x2F;&#x2F;github.com&#x2F;schani&#x2F;forthlisp" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;schani&#x2F;forthlisp</a>
DonHopkinsover 3 years ago
Forth * Lisp = PostScript
评论 #29261791 未加载
klyrsover 3 years ago
Why not both? And throw in Python to boot?<p><a href="https:&#x2F;&#x2F;github.com&#x2F;asrp&#x2F;flpc&#x2F;" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;asrp&#x2F;flpc&#x2F;</a>
评论 #29262046 未加载
评论 #29261682 未加载
DonHopkinsover 3 years ago
Coco Conn and Paul Rother wrote this up about what they did with FORTH at HOMER &amp; Assoc, who made some really classic music videos including Atomic Dog, and hired Charles Moore himself! Here&#x27;s what Coco Conn posted about it, and some discussion and links about it that I&#x27;m including with her permission:<p>Peter Conn:<p><a href="https:&#x2F;&#x2F;imgur.com&#x2F;a&#x2F;4Bmb4xu" rel="nofollow">https:&#x2F;&#x2F;imgur.com&#x2F;a&#x2F;4Bmb4xu</a><p>Homer &amp; Associates (1982):<p><a href="http:&#x2F;&#x2F;leftbrain.us&#x2F;rotherHistory&#x2F;homer.html" rel="nofollow">http:&#x2F;&#x2F;leftbrain.us&#x2F;rotherHistory&#x2F;homer.html</a><p>Peter Conn Papers at Stanford:<p><a href="https:&#x2F;&#x2F;library.stanford.edu&#x2F;blogs&#x2F;special-collections-unbound&#x2F;2019&#x2F;05&#x2F;peter-conn-papers-available-research" rel="nofollow">https:&#x2F;&#x2F;library.stanford.edu&#x2F;blogs&#x2F;special-collections-unbou...</a><p><a href="https:&#x2F;&#x2F;oac.cdlib.org&#x2F;findaid&#x2F;ark:&#x2F;13030&#x2F;c8n303pn&#x2F;entire_text&#x2F;" rel="nofollow">https:&#x2F;&#x2F;oac.cdlib.org&#x2F;findaid&#x2F;ark:&#x2F;13030&#x2F;c8n303pn&#x2F;entire_tex...</a><p>George Clinton - Atomic Dog (Official Music Video) HD<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=LMVZ36VA0wg" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=LMVZ36VA0wg</a><p>Steve Miller Band - Abracadabra<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=tY8B0uQpwZs" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=tY8B0uQpwZs</a><p>Steve Miller Band - Bongo Bongo<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=_NrsRZdMI-A" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=_NrsRZdMI-A</a><p>Flying Logos for 1989 Siggraph Electronic Theater:<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=9hIOfEiy4lc" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=9hIOfEiy4lc</a><p>&gt;First shown at the 1989 Siggraph Electronic Theater to a rave response, this 3 minute humourous film went on to win several top computer graphic awards that same year including Niccograph of Japan.<p>&gt;Coco: This was a show favorite at the SIGGRAPH film show that year. The year before the conference committee decided that showing demos wasn&#x27;t the way to go anymore. Peter wrote Flying Logos as a way to sneak our demo reel into the show by turning it into a story. It worked and we made it into the film show.<p>&gt;Don: I truly believe that in some other alternate dimension, there is a Flying Logo Heaven where the souls of dead flying logos go, where they dramatically promenade and swoop and spin around each other in pomp and pageantry to bombastic theme music. It would make a great screen saver, at least! Somewhere the Sun Logo and the SGI Logo are still dancing together.<p>----<p>Peter Conn and I [Coco Conn] had a company called HOMER &amp; Assoc. which was located at the Sunset Gower Studios from 1977 until we closed shop in 1997. We made music videos, commercials &amp; computer graphics&#x2F;special effects for feature films. One cool note, we worked with Paul Verhoven on both RoboCop in 1986 and the x-ray scene for Total Recall in &#x27;89.<p>HOMER was actually a real time visual mixing console that our in-house engineer spent 1978 - 1981 designing and building, from scratch. The name HOMER stood for &quot;Hybrid Optical Montage Electronically Reproduced.&quot; I helped as well, soldering the LEDs on the console and running cables. Peter built his own optical printer and three years into the build we also bought an early computer paint system. Our engineer finished building the console and promptly decided to move to England. We hadn’t used it because we still hadn’t found the right software to run the system. Luckily that’s when Paul Rother joined the company.<p>The joy stick on our console would bump you to the next line of code (being a command or sequence of events: fade, cut, dissolve, etc.) The console had touch sensitive fader pads. There were no dials. I think they were made by Allison? Each channel (which controlled either a slide projector or a film projector) was touch sensitive. After recording a sequence we could then tweek the current version using additional effects the channels offered such as momentary, additive, on&#x2F;off, etc. For instance if you wanted to crossfade two images, you could either program it or perform it. Of course everything you did was recorded and would play back on the next round. You literally performed a sequence of visual effects with your hands. Peter would do countless passes until everything was perfect. This performance would then be played back to IP film on the optical printer. Each slide tray or film real would be individually run, one by one, to IP film. Sometimes there would be 10-15 or more passes to get all the elements transferred. Once that was done we would then convert the IP film to video and do additional video editing and effects. A totally nuts analogue system. But it worked.<p>---------------<p>HOMER Explained by Paul Rother, in-house programmer, (1982):<p>The photo is Paul sitting in front of the Optical Printer 7-bit Paint system, Homer and Associates, circa 1982. Homer and Associates was really one of a kind kinda of company. Founded by Peter Conn, originally I got hired to program Homer II, a visual realtime mixing console. Homer I is another whole story, but before my time. Homer II consisted of 16 slide projectors, 4 movie projectors, a 4 track tape recorder, 24 visual channels (each with its own Z80) touch sensitive sliders, a master Z80 S100 bus system and featuring &quot;the joy stick bumper &quot; control, which looked liked the gear shift right out of a 1964 mustang convertible.<p>The idea was that you would program a visual sequence, then play the sequence in sync with the sound track on the joystick, including cascades, bumps, cuts, etc. The whole thing would be recorded, and if you wanted to, like an audio mixer, go back and do over dubs, making corrections. Then once you had the perfect &quot;hero&quot; recording, you take the 8&quot; floppy disc with the hero recording and the trays of slides to the optical printer, and record it to IP motion picture film, making multiple passes, one tray at a time. Now that I think about it, it was a crazy idea. We actually got the whole thing to work. And it worked great!<p>Forth &amp; Charles Moore<p>We hired Forth, Inc. and got Charles Moore, the inventor of FORTH to program the console host computer. I learned FORTH and worked with Charles. I programmed the 2K byte EPROM in each visual channel. On the Master Z80 system we ran PolyForth a multi tasking system in 32K bytes. We had an extra 16K RAM for buffers and things. If I remember right, the system ran four tasks, but that was 20 years ago, my memory may be hazy.<p>Anyway, I learn not only FORTH from Charles Moore, but also how to factor code in to small reusable routines, WORDs they&#x27;re called in FORTH. I learned Object Oriented Programming without knowing it. Also a lot of use of vectors. Its a cool language. Charles Moore was a great inspiration to me, and really taught me a great deal that they never taught me in computer programming school.<p>CAT-700<p>After we got the basic Homer II working and were able to record on the optical printer, Peter had another idea. He wanted to be able to see the movement of the optical printer, and see a prior frame compared to the current frame. We already had a video assist on the Fries Mitchell 35mm. What we needed was a Frame Buffer. We heard of S100 video board called the CAT-100, which was 1-bit frame buffer, good enough for what we needed. Somehow we never found a 1-bit version, but we found 7-bit version in the recycler!<p>We flew to Reno, rented a car and drove to a log cabin up in the hills of Truckie California. We got a demo of the thing. The guys were super secret and didn&#x27;t want us to see the controlling program. It worked, so we bought it, and then flew onto Palo-Alto and met the French guy who designed it. They checked it out and it was OK. This was the days before computer designed boards, and all the traces on the board were curvy, kinda like a Van Gogh painting. We learned that it was 7-bit (CAT-700) because it would have been an 8-bit, but they could not get the 8th bit to work. We spent the night in Palo Alto with a Stanford friend of Peters working on a crazy secret Apple project, the Lisa. 32KByte Paint System<p>So I got the CAT-700 frame buffer to work, programmed in FORTH. So in that 32K we had an optical printer control system, and a paint system, all in one. (Also the OS, compiler, debugger, etc.) We later hooked up a Summigraphic Bitpad (before the Watcom tablet) and were able to draw on top of digitized frames. It got to the point where we needed TWO optical printers, one to digitize from film, and the other to record to film. Rube Goldberg is not strong enough descriptive to describe the system, with the filter wheels and all on stepper motors, it made music. The first use of the system was effects for Steve Miller Music Video, Abracadabra. I also remember using it on the George Clinton Video, Atomic Dog.<p>This photo was taken right after we got the system to work. I had hooked up an analog slider box, which controlled things like color. There were 4 color maps we could switch between instantly We did a lot of work in planes, using 2 planes for the original image to be rotoscoped, and the other 5 planes to draw onto. This photo was taken for an article in Millimeter Magazine. The photo ended up being a two page color spread, and I think Peter was pissed, cause I got premier exposure.<p>TTL logic<p>At Homer and Assoc. I also learned TTL logic and designed a number of computer boards for the S100 bus. One that controlled stepper motors with a timer chip (Motorola 6840). Another to control the Slide Projectors also using the same Motorola timer chip to control the lamp triacs. My favorite thing, about the system, was the use of the cassette storage interface as a cheap timecode reader&#x2F;writer.
perthover 3 years ago
Does Forth have a purpose when TCL exists?
评论 #29262932 未加载
评论 #29264699 未加载