3 ms·
That's good context. Thank you for the reply. A few years back, both my brother and father wanted to learn to program. Actually, relearn in the case of my da
by xscott 4y ago
That's good context. Thank you for the reply.
A few years back, both my brother and father wanted to learn to program. Actually, relearn in the case of my dad. He was doing assembly programming for fun when I was a kid, and he taught me Basic. So really, he wanted to re-learn after a 30 or more year hiatus.
I tried to turn them both on to DrScheme (PLT wasn't named Racket yet). I figured the language is elegant, the tool is friendly, it's got libraries for tons of things, and the syntax is really simple. Kind of the "learn the language in the first part of the first chapter" approach in SICP, and then get to doing something fun. It's a much better language, environment, library, and implementation than Python. But it really didn't pan out.
I'm sure we can blame me for being a poor teacher, but my brother got turned off completely, and my father seemed pretty annoyed it wasn't anything like he remembered. After that, I showed him Python, and he ran with it for a few months before he switched back to doing his pet projects in Excel. He's older than both of us, so he can do whatever he wants :-)
Anyways, I kind of like Scheme, and I've been installing various implementations of it on my computers for the last two decades. Of course I must not like it that much, because I almost never use it for my pet projects. Maybe that's because I like numerical stuff and am too lazy to sort out an infix macro that makes me happy. It's just easier to use Python or C++ (or lately, Rust).
Elsewhere, you made the comment "The Lisp version looks similar to the Python code, plus parentheses". Apparently it wasn't obvious, but that was intentional :-) I just wonder why people (like my father) find Python so accessible, when you can make Scheme look nearly identical if you ignore the parens. In every way that counts, Scheme is at least as expressive and has much better implementations than Python... Yet people prefer Python.
If I ever make my own compiler, I'm inclined to use parens as delimiters for expressions. I'll spare you the details, but it won't really be a Lisp, and it would be more block structured. I only bring this up because in your first reply above where you were proselytizing and pontificating, you were already preaching to the choir. Since that OP way up there made a comment about it not scanning well (looking at it with blurry text), I wanted to hear from someone who doesn't like Lisp what it would take to make it likable.
And of course all my comment did was draw attention from two people that want to defend Lisp. :-)