
Thinking Forth (1984) - brudgers
http://thinking-forth.sourceforge.net
======
jwmerrill
Here's a PDF version that can open in your browser, for folks who don't relish
opening unknown binaries from SourceForge:

[http://www.dnd.utwente.nl/~tim/colorforth/Leo-
Brodie/thinkin...](http://www.dnd.utwente.nl/~tim/colorforth/Leo-
Brodie/thinking-forth.pdf)

~~~
pgeorgi
And if you want to build your own: [https://github.com/forthy42/thinking-
forth](https://github.com/forthy42/thinking-forth)

------
Shog9
This was one of the first programming books I read as a kid, after Brodie's
"Starting Forth" and a bunch of not very memorable books about BASIC.

It remains the standard to which I hold all programming books I read. The
author's enthusiasm and patient but never patronizing style drew me in, and
the book's recognition that language and methodology are not inseparable
changed how I viewed programming; the observation that design and
implementation a dance rather than a handshake changed how I looked at
software.

A classic worth reading even if you never intend to use Forth.

------
Shaniqua
I am new to programming. So far I dabbled a bit in Scheme, Python,
Smalltalk(Pharo). I quickly realized I don't care for Python, but Scheme is an
awesome language(it's like doing Abstract Algebra a bit) and Smalltalk is an
unbelievable environment. Now Forth also piqued my interest. How is it
different from, say, Pharo? Apparently, one of Forth's selling points is
related to "philosophy of problem solving". In that regard, how does Forth
compare to Scheme? For example, it's trivial to solve certain problems by
recursion in Scheme. Thanks.

~~~
rwmj
I wrote a forth tutorial in two parts:

[http://git.annexia.org/?p=jonesforth.git;a=blob_plain;f=jone...](http://git.annexia.org/?p=jonesforth.git;a=blob_plain;f=jonesforth.S)

[http://git.annexia.org/?p=jonesforth.git;a=blob_plain;f=jone...](http://git.annexia.org/?p=jonesforth.git;a=blob_plain;f=jonesforth.f)

~~~
drivers99
I don't remember when I first read jones forth, but it's been on my mind ever
since. I love it. Thank you.

------
dmux
Excellent book as an introduction to Software Engineering. Also, Forth is a
fun language/live-environment to play around with. When I first started using
Forth (Gforth) the live-programming matched with point-free programming is
left with me the unshakable impression that 'this is what programming should
be like.'

------
avodonosov
One of the best programming books I've read.

------
hliyan
Beautiful. I wish I had the first 30 pages of this book during my SE 101 days.

A direct link to the PDF might have been better though. I almost skipped this
when I saw the Sourceforge URL.

~~~
kip_
I was amused to see that uBlock Origin's default filter lists now include
sourceforge and thus I was momentarily stopped from seeing it.

[https://github.com/gorhill/uBlock/wiki/Badware-
risks](https://github.com/gorhill/uBlock/wiki/Badware-risks)

------
brudgers
It came across my radar via Michael Fogus's _Six Works of Computer Science-
Fiction_ [0]. After reading the first chapter, the reasons that people
love/loved Forth suddenly make sense. Like Lisp it's full stack - from close
to the metal to arcane abstractions.

[0]: But only after the second time it was posted to HN.
[http://blog.fogus.me/2015/04/27/six-works-of-computer-
scienc...](http://blog.fogus.me/2015/04/27/six-works-of-computer-science-
fiction/)

------
riffraff
I read this book a few years back, it's quite good even if you never do actual
Forth programming, at least to skim.

------
logicrime
You guys know that PDFs can load web assets right? They can de-anonymize you
just by opening them right?

Don't trust it if you don't trust the host.

~~~
TheLoneWolfling
You guys know that PDF readers can turn off loading of web assets right? That
you should turn it off or prompt or people can de-anonymize you just by
getting you to open a PDF right?

Don't trust it if you don't trust the host, regardless. Exploits do exist.

~~~
logicrime
As ignorant/oblivious as HN users are, (see your post for reference) it needed
to be mentioned.

