writing.exchange is one of the many independent Mastodon servers you can use to participate in the fediverse.
A small, intentional community for poets, authors, and every kind of writer.

Administered by:

Server stats:

339
active users

#smalltalk

1 post1 participant0 posts today

The Xerox PARC alumni who contribute to the Medley Interlisp project shared the buttons they collected at computing conferences in the 1980s and 1990s such as AAAI, IJCAI, SIGGRAPH.

The buttons are awesome and span a range of languages and systems such as Interlisp, Lisp Machines, Smalltalk, Unix, Modula-2, Mesa, Pilot, and more. Be sure to go through the whole thread.

groups.google.com/g/lispcore/c

groups.google.comConference buttons

The original #LISP had 7 primitives: \(\texttt{cons}\), \(\texttt{car,}\) \(\texttt{cdr}\), \(\texttt{atom}\), \(\texttt{quote}\), \(\texttt{eq}\), and \(\texttt{cond}\). And the original #Smalltalk syntax could fit on a 5×7 card. That meant a novice could learn the syntax in a matter of minutes, and direct all his efforts to learning how properly to wield the power of that Turing-complete language. This was why, in the 1970s and the 1980s, many college freshmen were taught FP in Scheme (a more modern LISP) and many middle school children were taught OO in Smalltalk. These were surely the best "first" #programming languages.

#FORTRAN and #BASIC were simple, too. FORTRAN, the first high-level language, has been in continuous use since the late 1950s by engineers, who are not keyboard warriors. BASIC was invented in the early 1960s for teaching programming to non-STEM students at Dartmouth. It sired a whole generation of self-taught children in the 1980s.

Compare those to C++, Erlang, Python, Haskell, Java, JavaScript, Scala, Rust, Kotlin, and pretty much every language in popular use today. Most consider Python and JavaScript to be the simplest of modern languages. Yet, they are massive, complex languages. No 10-year-old could teach himself those, nor should he.

The original versions of those classic languages cannot be used to solve modern problems. But they should still be taught to youngsters as their first language. Throwing in the kids' faces a modern enterprise language confuses them and discourages them. Consequently, many novices never attain that state of flow, when the joy of programming gushes forth.

#Simplicity is a virtue. Self-motivated learning is virtuous.

💬 Small talk to jedna z tych rzeczy, które dla wielu osób są zupełnie naturalne, ale dla innych stanowią istną torturę. Może i dla Ciebie? Czasem po prostu nie masz ochoty na rozmowy o pogodzie, o prawicowych trollach, czy jałowego pytania zaczynającego się od "co tam u Ciebie?" i marzysz, by w spokoju dotrzeć do celu, nie wikłając się w zbędne gadki. Jednak jak to zrobić, żeby nie być uznanym za mruka czy chama?
#poradnik #smalltalk #rozmowa #komunikacja #introwertyzm
marcinkaminski.pl/small-talk/

Marcin Kamyk Kamiński · Jak uniknąć small talku i nie wyjść na gbura? Poradnik - Marcin Kamyk KamińskiSmall talk Cię męczy? Sprawdź skuteczne sposoby na unikanie small talku, które pomogą Ci uniknąć niezręcznych pogaduszek.

I think any large interesting program you might write could well have an embedded language within it, in which the user can write stuff that is just as good, and just as deep as built-in functionality. You want this. It’s a thing that makes programs compelling.

In #Vim, that embedded language is #VimScript. In #emacs, that’s #elisp (which in fact, I think the whole thing is written in). In a #smalltalk environment, you control the entire environment with Smalltalk, just as elisp applies to Emacs. For many, many things, that language is #lua ( #NeoVim, many games, #pandoc, #redis, this list goes on).

I used to think there were really two reasonable mainstream languages you could use here: #Python or #javascript. Between those two, for a long time I felt that JavaScript was the winner. I think that has changed as Python has gotten faster, more powerful, and better known. But also, I think the answer might actually not be either of these two. It might be Lua. Lua is simpler and faster than either JavaScript or Python. It’s more embeddable. It’s designed specifically for this purpose. It’s in much wider use as an embedded scripting language. I don’t want Lua to be the answer. I like Python better. But I think Lua actually is the right answer.

Replied in thread

@woolie
Guessing it’s a 3D array? Never worked with #swift but have worked with #objectivec and I got really confused with the array syntax there. I’m guessing the C was obfuscated by the #smalltalk. If #swift is based around C (and I’m going to guess it isn’t), then an array would be nothing more than a pointer. And a 3D array would be declared as foo[][][]. The tricky part was the memory allocation if you didn’t know the size ahead of time and had to allocate dynamically.

I was walking on campus and ran into my head of department. We haven't seen each other in a while, so we should engage in small talk, but it's not like we have anything to talk about.

He says: "It's cold, isn't it?"
I say: "Yes, it is."

Both without stopping, just walking past each other.

That's it. This counts as a valid and cordial conversation.

My favorite kind of small talk. I love Japan for this too.