Re: [fonc] FONC: The Fanboy Mailing List With No Productivity
On Sat, Apr 13, 2013 at 12:48:53AM +0200, Igor Stasenko wrote: On 12 April 2013 22:18, John Pratt jpra...@gmail.com wrote: This is just like open source software. A bunch of feelgood people hangin' out and messin' around, not ever doing anything, but pretending they are getting somewhere by indulging themselves. No one on here is probably working on the Fundamentals of New Computing. I know that i going against the rule to not feed the troll, but sorry cannot resist. Replied using Firefox open-source software. This is just a trash bin for people who don't want to do anything. The real work is probably on noise-free mailing list. This is the fanboy list for Alan Kay. Also cannot resist. Well if you are not satisfied you can establish new list. Then we will have: fonc - Renamed according to your suggestion to friends of naive computing focn - Same topics but with elite mentality. To be more elite conversations are in french (fondamentaux of l'computateour nouvelle) Elders hang on #fnoc irc channel and criticize postings from fcon as they were solved 20 years ago on hungarian academy proceedings article. Meanwhile real work is done @fonnc (fundamentals of new new computing) twitter channel. However do not confuse it with nfonc (new fundamentals of new computing) facebook group. There they mostly suggest same ideas as in fonc but with 5 year lag which fail on same problems. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- Best regards, Igor Stasenko. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- Borg implants are failing ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
[fonc] CodeSpells, new thread
So I think the original thread drifted a bit. I'm curious about what folks think of the research involved here. I read the paper. A few things stuck out. The thing I'd mention is that it seemed to work (at least superficially) with getting 12 year olds to (begin to) tackle a programming language which by my own (prejudiced) standards is a rather difficult choice for *adults* who want to program casually. I guess I also identified with the whole set of things they identified as common among kids who learned to code in a quiet hole without any real support. They say that Java wasn't trying to convert the Lisp crowd, so much as the C++ crowd. Lisp, so far, seems a lot more learnable than C++ but that's beside my interest here. Since one of the things I think we ought to be arguing about in this context is how do we scale things like Scratch or Etoys up to the sky and down to the metal? I do think the study is relevant. It maybe helps explain how to deal with the trip to the metal end. Or maybe not. OTOH I didn't feel like there were enough numbers in there. It felt very very soft-science, and maybe there's no way around that. And maybe I have a prejudice about soft science. I got the general sense that the smell meant it was working, though, so I'm really interested in seeing what these folks do next. At the end of the day, what works, works, right? Does anyone here know these researchers? Any chance we might be able to pull them into the dialogue? At risk of wasting time on BS troll threads. I get the sense these are the kind of people I'd like to see posting here. Anyway they've got some *very* relevant experience now, and I think it would be cool to hear about what they're planning to do next. Just a thought. -- Casey Ransberger ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
[fonc] holy grail of FONC?
Is the holy grail of FONC to create an environment where you can use command line, text editor, IDE, and end-user programming to program the same program? Are there any other ways to program? Circuit boards? I believe FONC includes this. Speech and gestures? Does FONC provide a way to use speech and gestures to program? Is this a bit like Intentional Software? This reminds me a bit of Tcl/Tk as well, where programming command line, program and GUI were integrated. What else out there is trying to encompass all kinds of programming in a cross media way? John ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
[fonc] Scope? [was: The Fanboy Mailing List With No Productivity]
Ondřej Bílka wrote: This is just a trash bin for people who don't want to do anything. The real work is probably on noise-free mailing list. This is the fanboy list for Alan Kay. Also cannot resist. Well if you are not satisfied you can establish new list. Then we will have: Though... it does raise the question: what is the intended and/or evolved scope of FONC? For the purposes of discussion here, what constitutes new computing? Is it: a. VPRI's work b. programming paradigms and languages (for which http://lambda-the-ultimate.org/ is really the best forum I've seen) c. computational models and paradigms (e.g, massively concurrent systems, AI) d. leading edge applications e. computing paradigms in the large (e.g., biological computing, quantum computing) e. something else? f. some combination of the above? Kinda hard to tell from the discussions, and http://vpri.org/mailman/listinfo/fonc is silent on the question. Miles Fidelman -- In theory, there is no difference between theory and practice. In practice, there is. Yogi Berra ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] holy grail of FONC?
I think what you might be seeing is a desire in the community to overcome some of the boundaries to advancement that one arrives upon when building an educational system on top of a less educational system. A class example might be the challenge an avid Etoys user might face when exiting the walled garden of Etoys and starting to try to program in (in this case) something like Smalltalk. Smalltalk is easier to learn than C++ (thanks!) but a lot harder to learn than Etoys. It's sudden. There isn't a very good gradient to the learning curve. It's kind of like, kid, now you're on your own, and you better learn how to use that sword fast if you wanna survive. You go from safe to true become: false pretty fast. See below for one way to ease the unsafe programming problem that's been a product of the FONC work, called worlds. It would be better, one might argue, if the knowledge of one layer might be able to help explain the knowledge needed to tackle the next lower layer. One way to facilitate this might be to build every layer in terms of the layer beneath it, but also, *linguistically* to describe every layer's language in terms of the same substrate. See also, OMeta. Frank seems to do this -- as far as I can discern without using it -- better than anything we've seen yet. Or anyway that's the hope as I understand it. Of course there are other objectives which are related, like getting the total body of work needed to express a fully working system down to the quanta we really actually need to continue our studies. If we can do that, we may be able to make our studies more precise, more accurate. This could be valuable to both educators and to the thousands of slaves in industry (raises hand.) One initiative which is interesting is Worlds which could function as a kind of exploratory programmer's undo. This has been covered in various papers on the VPRI writings page, and touched upon IIRC in some of the NSF updates. It's actually IMHO one of the unsung heroes of what these people have been up to. My favorite quote from anyone related to this effort comes from a private conversation with Ian Piumarta, (Ian, if it wasn't cool to share this, I'll let you hit me in the face one time) and he said this: My mission is to discover the Bose-Einstein condensate of computer programming... Which is (I think) to say: I want to find a way to make quantum effects become apparent at a macroscopic scale. If we can figure out how to do something analogous to that in the context of programming, by re-examining the fundamentals we have taken for granted since the birth of the industry, we may be able to apply that knowledge to build massively simpler large scale systems. Please forgive if I've gone on at length about stuff you already knew. As for the Holy Grail? I don't think it exists. There is no dark side of the moon, really. As a matter of fact, it's all dark. (The redacted part of the original studio recording was: the only thing that makes it look light is the sun.) Hugs and such! Casey On Apr 13, 2013, at 6:34 AM, John Carlson yottz...@gmail.com wrote: Is the holy grail of FONC to create an environment where you can use command line, text editor, IDE, and end-user programming to program the same program? Are there any other ways to program? Circuit boards? I believe FONC includes this. Speech and gestures? Does FONC provide a way to use speech and gestures to program? Is this a bit like Intentional Software? This reminds me a bit of Tcl/Tk as well, where programming command line, program and GUI were integrated. What else out there is trying to encompass all kinds of programming in a cross media way? John ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Scope? [was: The Fanboy Mailing List With No Productivity]
Below. On Apr 13, 2013, at 7:18 AM, Miles Fidelman mfidel...@meetinghouse.net wrote: Ondřej Bílka wrote: This is just a trash bin for people who don't want to do anything. The real work is probably on noise-free mailing list. This is the fanboy list for Alan Kay. Also cannot resist. Well if you are not satisfied you can establish new list. Then we will have: Though... it does raise the question: what is the intended and/or evolved scope of FONC? For the purposes of discussion here, what constitutes new computing? Is it: a. VPRI's work b. programming paradigms and languages (for which http://lambda-the-ultimate.org/ is really the best forum I've seen) c. computational models and paradigms (e.g, massively concurrent systems, AI) d. leading edge applications e. computing paradigms in the large (e.g., biological computing, quantum computing) e. something else? f. some combination of the above? Kinda hard to tell from the discussions, and http://vpri.org/mailman/listinfo/fonc is silent on the question. Miles Fidelman Oh come on. If you'd read everything here: http://vpri.org/html/writings.php ...or followed the dialogue much, you wouldn't have to ask this question. Your pal, Casey ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] CodeSpells, new thread
On 2013-04-13 04:56AM, Casey Ransberger wrote: A few things stuck out. The thing I'd mention is that it seemed to work (at least superficially) with getting 12 year olds to (begin to) tackle a programming language which by my own (prejudiced) standards is a rather difficult choice for *adults* who want to program casually. My totally amateur two cents: My feeling is that it's not the language which is difficult, but the environment. So tinkering with working Java snippets in a game is probably a lot less intimidating than setting up a Java development environment, learning your way around Eclipse or NetBeans or whatever, and dealing with all the boilerplate needed to build a basic program... My other thought is that getting kids interested in programming doesn't seem to be a difficult thing to do. We have tons of examples, Papert using Logo, Boxer, Scratch, Etoys, the DrRacket folks with Program by Design and Bootstrap and the WeScheme online environment, etc., etc., etc. It seems like any time anyone does even a halfway decent job of providing kids with an environment where they can jump right in and get started writing code that does stuff they can see, with a little support and freedom to explore, the kids take to it like ducks to water. So to me the question is not how do we get kids interested in programming, but how do we expose more kids to these environments? And how do we follow through on this: how do we help them keep using and building those skills? Can we use similar techniques to interest adults? How would I get started on bringing this stuff to my local community? I think it's great that people are doing all this research, but it's frusrating that so much of it is *only* research projects. I feel like we need someone who is deep enough into this stuff to write a volunteer's manual so those of us who aren't so savvy could get a handle on where we might be able to jump in and start helping make some of this stuff part of everyday reality... --Josh ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Scope? [was: The Fanboy Mailing List With No Productivity]
Casey Ransberger wrote: Below. On Apr 13, 2013, at 7:18 AM, Miles Fidelman mfidel...@meetinghouse.net wrote: Though... it does raise the question: what is the intended and/or evolved scope of FONC? For the purposes of discussion here, what constitutes new computing? Is it: a. VPRI's work b. programming paradigms and languages (for which http://lambda-the-ultimate.org/ is really the best forum I've seen) c. computational models and paradigms (e.g, massively concurrent systems, AI) d. leading edge applications e. computing paradigms in the large (e.g., biological computing, quantum computing) e. something else? f. some combination of the above? Kinda hard to tell from the discussions, and http://vpri.org/mailman/listinfo/fonc is silent on the question. Miles Fidelman Oh come on. If you'd read everything here: http://vpri.org/html/writings.php ...or followed the dialogue much, you wouldn't have to ask this question. Well, no... it doesn't. That's a list of what VPRI is doing - which strikes me as having a VERY limited focus vis-a-vis fundamentals of new computing and the list above. The dialogue has, at times wandered a bit beyond that, but does not (to me) strike me as getting either particularly fundamental or getting very near the edge of what might be considered new computing - as compared to, say, programming paradigms for quantum computers, or programming and metaprogramming in the human biocomputer. Hence my question - particularly re. intent of the list sponsor, and evolution (interests of the participants). Miles -- In theory, there is no difference between theory and practice. In practice, there is. Yogi Berra ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Layering, Thinking and Computing
On Sat, Apr 13, 2013 at 9:01 AM, Tristan Slominski tristan.slomin...@gmail.com wrote: I think we don't know whether time exists in the first place. That only matters to people who want as close to the Universe as possible. To the rare scientist who is not also a philosopher, it only matters whether time is effective for describing and predicting behavior about the universe, and the same is true for notions of particles, waves, energy, entropy, etc.. I believe our world is 'synchronous' in the sense of things happening at the same time in different places... It seems to me that you are describing a privileged frame of reference. How is it privileged? Would you consider your car mechanic to have a 'privileged' frame of reference on our universe because he can look down at your vehicle's engine and recognize when components are in or out of synch? Is it not obviously the case that, even while out of synch, the different components are still doing things at the same time? Is there any practical or scientific merit for your claim? I believe there is abundant scientific and practical merit to models and technologies involving multiple entities or components moving and acting at the same time. I've built a system that does what you mention is difficult above. It incorporates autopoietic and allopoietic properties, enables object capability security and has hints of antifragility, all guided by the actor model of computation. Impressive. But with Turing complete models, the ability to build a system is not a good measure of distance. How much discipline (best practices, boiler-plate, self-constraint) and foresight (or up-front design) would it take to develop and use your system directly from a pure actors model? I don't want programming to be easier than physics. Why? First, this implies that physics is somehow difficult, and that there ought to be a better way. Physics is difficult. More precisely: setting up physical systems to compute a value or accomplish a task is very difficult. Measurements are noisy. There are many non-obvious interactions (e.g. heat, vibration, covert channels). There are severe spatial constraints, locality constraints, energy constraints. It is very easy for things to 'go wrong'. Programming should be easier than physics so it can handle higher levels of complexity. I'm not suggesting that programming should violate physics, but programs shouldn't be subject to the same noise and overhead. If we had to think about adding fans and radiators to our actor configurations to keep them cool, we'd hardly get anything done. I hope you aren't so hypocritical as to claim that 'programming shouldn't be easier than physics' in one breath then preach 'use actors' in another. Actors are already an enormous simplification from physics. It even simplifies away the media for communication. Whatever happened to the pursuit of Maxwell's equations for Computer Science? Simple is not the same as easy. Simple is also not the same as physics. Maxwell's equations are a metaphor that we might apply to a specific model or semantics. Maxwell's equations describe a set of invariants and relationships between properties. If you want such equations, you'll generally need to design your model to achieve them. On this forum, 'Nile' is sometimes proffered as an example of the power of equational reasoning, but is a domain specific model. if we (literally, you and I in our bodies communicating via the Internet) did not get here through composition, integration, open extension and abstraction, then I don't know how to make a better argument to demonstrate those properties are a part of physics and layering on top of it Do you even have an argument that we are here through composition, integration, open extension, and abstraction? I'm a bit lost as to what that would even mean unless you're liberally reinterpreting the words. In any case, it doesn't matter whether physics has these properties, only whether they're accessible to a programmer. It is true that any programming model must be implemented within physics, of course, but that's not the layer exposed to the programmers. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Layering, Thinking and Computing
This discussion reminds me of http://www.ageofsignificance.org/ It's a philosophical analysis of what computation means and how, or if, it can be separated from the machine implementing it. The author argues that it cannot. If you haven't read it you might find it interesting. Unfortunately only the introduction is published as of today. BR John Den 12 apr 2013 20:08 skrev Tristan Slominski tristan.slomin...@gmail.com : I had this long response drafted criticizing Bloom/CALM and Lightweight Time Warps, when I realized that we are probably again not aligned as to which meta level we're discussing. (my main criticism of Bloom/CALM was assumption of timesteps, which is an indicator of a meta-framework relying on something else to implement it within reality; and my criticism of Lightweight Time Warps had to do with that it is a protocol for message-driven simulation, which also needs an implementor that touches reality; synchronous reactive programming has the word synchronous in it) - hence my assertion that this is more meta level than actors. I think you and I personally care about different things. I want a computational model that is as close to how the Universe works as possible, with a minimalistic set of constructs from which everything else can be built. Hence my references to cellular automata and Wolfram's hobby of searching for the Universe. Anything which starts as synchronous cannot be minimalistic because that's not what we observe in the world, our world is asynchronous, and if we disagree on this axiom, then so much for that :D But actors model fails with regards to extensibility(*) and reasoning Those are concerns of an imperator, are they not? Again, I'm not saying you're wrong, I'm trying to highlight that our goals differ. But, without invasive code changes or some other form of cheating (e.g. global reflection) it can be difficult to obtain the name of an actor that is part of an actor configuration. Again, this is ignorance of the power of Object Capability and the Actor Model itself. The above is forbidden in the actor model unless the configuration explicitly sends you an address in the message. My earlier comment about Akka refers to this same mistake. However, you do bring up interesting meta-level reasoning complaints against the actor model. I'm not trying to dismiss them away or anything. As I mentioned before, that list is a good guide as to what meta-level programmers care about when writing programs. It would be great if actors could make it easier... and I'm probably starting to get lost here between the meta-levels again :/ Which brings me to a question. Am I the only one that loses track of which meta-level I'm reasoning or is this a common occurrence Bringing it back to the topic somewhat, how do people handle reasoning about all the different layers (meta-levels) when thinking about computing? On Wed, Apr 10, 2013 at 12:21 PM, David Barbour dmbarb...@gmail.comwrote: On Wed, Apr 10, 2013 at 5:35 AM, Tristan Slominski tristan.slomin...@gmail.com wrote: I think it's more of a pessimism about other models. [..] My non-pessimism about actors is linked to Wolfram's cellular automata turing machine [..] overwhelming consideration across all those hints is unbounded scalability. I'm confused. Why would you be pessimistic about non-actor models when your argument is essentially that very simple, deterministic, non-actor models can be both Turing complete and address unbounded scalability? Hmm. Perhaps what you're really arguing is pessimistic about procedural - which today is the mainstream paradigm of choice. The imperial nature of procedures makes it difficult to compose or integrate them in any extensional or collaborative manner - imperative works best when there is exactly one imperator (emperor). I can agree with that pessimism. In practice, the limits of scalability are very often limits of reasoning (too hard to reason about the interactions, safety, security, consistency, progress, process control, partial failure) or limits of extensibility (to inject or integrate new behaviors with existing systems requires invasive changes that are inconvenient or unauthorized). If either of those limits exist, scaling will stall. E.g. pure functional programming fails to scale for extensibility reasons, even though it admits a lot of natural parallelism. Of course, scalable performance is sometimes the issue, especially in models that have global 'instantaneous' relationships (e.g. ad-hoc non-modular logic programming) or global maintenance issues (like garbage collection). Unbounded scalability requires a consideration for locality of computation, and that it takes time for information to propagate. Actors model is one (of many) models that provides some of the considerations necessary for unbounded performance scalability. But actors model fails with regards to extensibility(*) and
Re: [fonc] holy grail of FONC?
One initiative which is interesting is Worlds which could function as a kind of exploratory programmer's undo. This has been covered in various papers on the VPRI writings page, and touched upon IIRC in some of the NSF updates. It's actually IMHO one of the unsung heroes of what these people have been up to. My coworker actually delivered a system with programmer's undo; it was called a reversible debugger in 1993--before IDEs were popular. We had a virtual machine. There wasn't a lot of syntax present. We used icons instead of just text to represent the program. We could delete operations before and after the program counter. We weren't given enough time to develop it into a full OO system...we kind of got in trouble for competing with industry at the time. Here's a link to the paper. If you have any questions, ask. All primitives were strings, but we did have a simple desktop calculator. http://w3.isis.vanderbilt.edu/OOPSLA2K1/Papers/Carlson.pdf In essence my understanding of how it worked was for every action stepped through an a undo record was created and kept on a stack. I am not sure how undos were handled inside loops, but I suspect there was undo until you find a record for the action present in the program. It was a fine piece of work by Jeffrey Allen. So I'm singing for Jeffrey. The project gave me respect for what you can do with a few desktop gadgets integrated with a flowchart. Programs were exportable and importable to/from C++ global variables--yes, i did the housepainting. We were storing the programs in flat files as well...one per class. If we could combine windows 8 with a reversible debugger, Wow! So now I'm essentially retired and reliving glory days. Remember this is before the web for the initial development. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc