<div>I'm still just a beginner, but what intrigues me about Lisp/Scheme is the idea of the REPL and being able to add stuff dynamically. (Blame "Lisp at JPL"? Beginners should not be allowed to read that essay.) Coupled with the idea that functional programming should be about *evaluating expressions* rather than stomping down a list of math-foreign instructions, I have this vision in my head of a mathematical-like organism that you feed new code to now and then when you want something new or different done. The next logical step is of course for the "organism" to span computers, a-la Sun Microsystems old saying "The network is the computer."</div>
<div><br></div><div>I've read up on this and that, and it seems concurrency and distributed computing these days is just variations on interconnected processes of one level of discreteness or another, possibly spanning computers. But this seems to go against the idea of a "dynamically-fed REPL organism" which is "evaluating" things. Am I making sense? It seems concurrency and distributed is just a layer of rigged up inter-operation over disparate, separate resources (stomping). . . rather than the resources being live parts of the organism (floating, soaring). This goes back to discussions we had in a database class concerning of what a "distributed database" really is. Is it just a pile of tricks to make the data look like it's in one location -- or can your data be accessed in situ, out in the wild, i.e., not having to be pooled, corralled, beaten into submission somewhere first.</div>
<div><br></div><div>Is anyone thinking along these lines? It seems like an environment like Lisp/Scheme with so much blurring of data and code, with homoiconicity (why live without it?), with a REPL able to take new code on the fly would be getting there. And of course Haskell doesn't even want you to do input/output. (Another big hint for a pro-Borg beginner like me.) State worries -- too common. I saw a fascinating new text editor for Clojure called Light Table (<a href="http://www.chris-granger.com/2012/04/12/light-table---a-new-ide-concept/">http://www.chris-granger.com/2012/04/12/light-table---a-new-ide-concept/</a>) that seems to be blurring things toward "organism" quite nicely. Yes, somebody might mention .NET or ORB, but no thanks. Even as a rank beginner I"m hitching my wagon to the functional paradigm because I feel intuitively it can do better.</div>
<div><br></div><div>But then I've heard people from PLT/Racket downplaying the whole dynamic feeding of a REPL.</div><div><br></div><div>Olwe</div><div>GM,MN,USA</div>