3 ms·
Part of the problem is education. Back in the day (70s, early 80s), many people were tackling hard computer problems (formerly known as "AI") with languages li
by Roboprog 10y ago
Part of the problem is education. Back in the day (70s, early 80s), many people were tackling hard computer problems (formerly known as "AI") with languages like Lisp (Scheme, et al), rather than Simula 67 (C++, Delphi, Java, et al). Not me, I was a student, but I did see that stuff.
Enter the microcomputer in the mid 80s, with its 16 bit memory model and single wimpy core. (ignoring 8 bit toys). Running a garbage collector on such meager machines wasn't practical, so malloc/new and free/destroy it is, then! (yes, the irony is precious when Java appears a decade later)
After the early 90s, the Simula programming model has been pretty much the only thing taught to developers - a few self-taught people perhaps aside - so it's the only way they think.
Trying to convince these people that large chunks of their logic should be immutable data, processed in a "one way path" (directed acyclic graph) through functions, some of which are built of or build other functions, and that input and output types (which can be traced backwards and often inferred rather easily) can be assembled "on the fly" makes no sense to them.
It's almost like standing on a box on the street corner and trying to preach at people in Greek. They don't understand a word you are saying. "Get these freaky cultists out of here!" :-)
- qwertyuiop924 10y agoOh, yes. By the way, there is nothing like Scheme + Emacs for interactive development. You can write functions, execute a buffer, and perform your data manipulations in real time, patching your functions as you go. It's freaking magic.