Re: [fonc] Final STEP progress report abandoned?
Hello Alan, I'm wondering, is there any progress on the report? Or have I missed the publication? Cheers, Paul On Tue, Sep 3, 2013 at 2:01 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Kevin At some point I'll gather enough brain cells to do the needed edits and get the report on the Viewpoints server. Dan Amelang is in the process of writing his thesis on Nile, and we will probably put Nile out in a more general form after that. (A nice project would be to do Nile in the Chrome Native Client to get a usable speedy and very compact graphics system for web based systems.) Yoshiki's K-Script has been experimentally implemented on top of Javascript, and we've been learning a lot about this variant of stream-based FRP as it is able to work within someone else's implementation of a language. A lot of work on the cooperating solvers part of STEPS is going on (this was an add-on that wasn't really in the scope of the original proposal). We are taking another pass at the interoperating alien modules problem that was part of the original proposal, but that we never really got around to trying to make progress on it. And, as has been our pattern in the past, we have often alternated end-user systems (especially including children) with the deep systems projects, and we are currently pondering this 50+ year old problem again. A fair amount of time is being put into problem finding (the basic idea is that initially trying to manifest visions of desirable future states is better than going directly into trying to state new goals -- good visions will often help problem finding which can then be the context for picking actual goals). And most of my time right now is being spent in extending environments for research. Cheers Alan -- *From:* Kevin Driedger linuxbox+f...@gmail.com *To:* Alan Kay alan.n...@yahoo.com; Fundamentals of New Computing fonc@vpri.org *Sent:* Monday, September 2, 2013 2:41 PM *Subject:* Re: [fonc] Final STEP progress report abandoned? Alan, Can you give us any more details or direction on these research projects? ]{evin ])riedger On Mon, Sep 2, 2013 at 1:45 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan -- *From:* Dan Melchione dm.f...@melchione.com *To:* fonc@vpri.org *Sent:* Monday, September 2, 2013 10:40 AM *Subject:* [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
Alan Kay alan.n...@yahoo.com writes: When I said even scientists go against their training I was also pointing out really deep problems in humanity's attempts at thinking (we are quite terrible thinkers!). I think a quite modest improvement would be more powerful calculators. For example, we already augment our arithmetic when we go shopping, why don't we augment our statistical ability when making judgements? We can be bad at estimating probabilities, but we're far worse at combining them correctly; for example the common error of not taking into account population bias when interpreting test results[1]. If we carried around a statistical calculator app with a simple UI (eg. graphs, tiles and sliders; not RPN) then we can enter numbers individually and have the device carry out the tricky combinations for us. When we don't need to estimate the numbers, eg. if they're given in a paper, report, magazine, etc. then a machine-readable representation like a barcode could be given alongside. This would allow us to intuit the values graphically, rather than slipping up on our parsing of the representation. [1] http://yudkowsky.net/rational/bayes/ Cheers, Chris ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
On Fri, Sep 6, 2013 at 1:19 AM, Chris Warburton chriswa...@googlemail.comwrote: David Barbour dmbarb...@gmail.com writes: But favoring a simpler programming model - e.g. one with only integers, and where the only operation is to add or compare them -might also help. If the problem domain is X then I agree a minimal X-specific DSL is a good idea, although purely numeric problems are often amenable to more direct solutions; eg. dynamic programming, gradient-based methods, etc. A rather nice property: given any general purpose concatenative language, we can create a DSL for genetic programming by developing a set of high-level words... then using those as the primitives for the GP. The main issue, I think, is a more flexible environment model. The stack doesn't offer very flexible interactions. A document (zipper) or graph could be modeled as an object on the stack, though. Best, Dave ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
On Mon, Sep 9, 2013 at 2:11 AM, Chris Warburton chriswa...@googlemail.comwrote: I think a quite modest improvement would be more powerful calculators. Smart phones? :) (But seriously.) Honestly, one of the things I would really want in a more powerful calculator is a powerful array of sensors that can turn parts of my environment into usable numbers. What is the distance between these two trees? What is the GPS coordinate? What chemicals are detected in the area? Even better if this happened all the time, so I can ask questions about recent events. Unfortunately, we lack the energy technologies for it. (Storage is much less an issue; we have lots of storage, and useful exponential decay and compression models to remove the boring stuff.) ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
Hi Paul I'm sure you are aware that yours is a very Engelbartian point of view, and I think there is still much value in trying to make things better in this direction. However, it's also worth noting the studies over the last 40 years (and especially recently) that show how often even scientists go against their training and knowledge in their decisions, and are driven more by desire and environment than they realize. More knowledge is not the answer here -- but it's possible that very different kinds of training could help greatly. Best wishes, Alan From: Paul Homer paul_ho...@yahoo.ca To: Alan Kay alan.n...@yahoo.com; Fundamentals of New Computing fonc@vpri.org; Fundamentals of New Computing fonc@vpri.org Sent: Saturday, September 7, 2013 12:24 PM Subject: Re: [fonc] Final STEP progress report abandoned? Hi Alan, I can't predict what will come, but I definitely have a sense of where I think we should go. Collectively as a species, we know a great deal, but individually people still make important choices based on too little knowledge. In a very abstract sense 'intelligence' is just a more dynamic offshoot of 'evolution'. A sort of hyper-evolution. It allows a faster route towards reacting to changes in the enviroment, but it is still very limited by individual perspectives of the world. I don't think we need AI in the classic Hollywood sense, but we could enable a sort of hyper-intelligence by giving people easily digestable access to our collective understanding. Not a 'borg' style single intelligence, but rather just the tools that can be used to make descisions that are more accurate than an individual would have made normally. To me the path to get there lies within our understanding of data. It needs to be better organized, better understood and far more accessible. It can't keep getting caught up in silos, and it really needs ways to share it appropriately. The world changes dramatically when we've developed the ability to fuse all of our digitized information into one great structural model that has the capability to separate out fact from fiction. It's a long way off, but I've always thought it was possible... Paul. From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Sent: Tuesday, September 3, 2013 7:48:22 AM Subject: Re: [fonc] Final STEP progress report abandoned? Hi Jonathan We are not soliciting proposals, but we like to hear the opinions of others on burning issues and better directions in computing. Cheers, Alan From: Jonathan Edwards edwa...@csail.mit.edu To: fonc@vpri.org Sent: Tuesday, September 3, 2013 4:44 AM Subject: Re: [fonc] Final STEP progress report abandoned? That's great news! We desperately need fresh air. As you know, the way a problem is framed bounds its solutions. Do you already know what problems to work on or are you soliciting proposals? Jonathan From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Cc: Date: Mon, 2 Sep 2013 10:45:50 -0700 (PDT) Subject: Re: [fonc] Final STEP progress report abandoned? Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan From: Dan Melchione dm.f...@melchione.com To: fonc@vpri.org Sent: Monday, September 2, 2013 10:40 AM Subject: [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
Hi Alan, I agree that there is, and probably will always be, a necessity to 'think outside of the box', although if the box was larger, it would be less necessary. But I wasn't really thinking about scientists and the pursuit of new knowledge, but rather the trillions? of mundane decisions that people regularly make on a daily basis. A tool like Wikipedia really helps in being able to access a refined chunk of knowledge, but the navigation and categorization are statically defined. Sometimes what I am trying to find is spread horizontally across a large number of pages. If, as a simple example, a person could have a dynamically generated Wikipedia page created just for them that factored in their current knowledge and the overall context of the situation then they'd be able to utilize that knowledge more appropriately. They could still choose to skim or ignore it, but if they wanted a deeper understanding, they could read the compiled research in a few minutes. The Web, particularly for programmers, has been a great tease for this. You can look up any coding example instantly (although you do have to sort through the bad examples and misinformation). The downside is that I find it far more common for people to not really understanding what is actually happening underneath, but I suspect that that is driven by increasing time pressures and expectations rather than but a shift in the way we relate to knowledge. What I think would really help is not just to allow access to the breadth of knowledge, but to also enable individuals to get to the depth as well. Also the ability to quickly recognize lies, myths, propaganda, etc. Paul. Sent from my iPad On 2013-09-08, at 7:12 AM, Alan Kay alan.n...@yahoo.com wrote: Hi Paul I'm sure you are aware that yours is a very Engelbartian point of view, and I think there is still much value in trying to make things better in this direction. However, it's also worth noting the studies over the last 40 years (and especially recently) that show how often even scientists go against their training and knowledge in their decisions, and are driven more by desire and environment than they realize. More knowledge is not the answer here -- but it's possible that very different kinds of training could help greatly. Best wishes, Alan From: Paul Homer paul_ho...@yahoo.ca To: Alan Kay alan.n...@yahoo.com; Fundamentals of New Computing fonc@vpri.org; Fundamentals of New Computing fonc@vpri.org Sent: Saturday, September 7, 2013 12:24 PM Subject: Re: [fonc] Final STEP progress report abandoned? Hi Alan, I can't predict what will come, but I definitely have a sense of where I think we should go. Collectively as a species, we know a great deal, but individually people still make important choices based on too little knowledge. In a very abstract sense 'intelligence' is just a more dynamic offshoot of 'evolution'. A sort of hyper-evolution. It allows a faster route towards reacting to changes in the enviroment, but it is still very limited by individual perspectives of the world. I don't think we need AI in the classic Hollywood sense, but we could enable a sort of hyper-intelligence by giving people easily digestable access to our collective understanding. Not a 'borg' style single intelligence, but rather just the tools that can be used to make descisions that are more accurate than an individual would have made normally. To me the path to get there lies within our understanding of data. It needs to be better organized, better understood and far more accessible. It can't keep getting caught up in silos, and it really needs ways to share it appropriately. The world changes dramatically when we've developed the ability to fuse all of our digitized information into one great structural model that has the capability to separate out fact from fiction. It's a long way off, but I've always thought it was possible... Paul. From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Sent: Tuesday, September 3, 2013 7:48:22 AM Subject: Re: [fonc] Final STEP progress report abandoned? Hi Jonathan We are not soliciting proposals, but we like to hear the opinions of others on burning issues and better directions in computing. Cheers, Alan From: Jonathan Edwards edwa...@csail.mit.edu To: fonc@vpri.org Sent: Tuesday, September 3, 2013 4:44 AM Subject: Re: [fonc] Final STEP progress report abandoned? That's great news! We desperately need fresh air. As you know, the way a problem is framed bounds its solutions. Do you already know what problems to work on or are you soliciting proposals? Jonathan From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Cc: Date: Mon, 2 Sep 2013 10:45:50 -0700 (PDT) Subject: Re: [fonc] Final STEP progress report abandoned? Hi Dan It actually got written and given
Re: [fonc] Final STEP progress report abandoned?
Hi Alan, I can't predict what will come, but I definitely have a sense of where I think we should go. Collectively as a species, we know a great deal, but individually people still make important choices based on too little knowledge. In a very abstract sense 'intelligence' is just a more dynamic offshoot of 'evolution'. A sort of hyper-evolution. It allows a faster route towards reacting to changes in the enviroment, but it is still very limited by individual perspectives of the world. I don't think we need AI in the classic Hollywood sense, but we could enable a sort of hyper-intelligence by giving people easily digestable access to our collective understanding. Not a 'borg' style single intelligence, but rather just the tools that can be used to make descisions that are more accurate than an individual would have made normally. To me the path to get there lies within our understanding of data. It needs to be better organized, better understood and far more accessible. It can't keep getting caught up in silos, and it really needs ways to share it appropriately. The world changes dramatically when we've developed the ability to fuse all of our digitized information into one great structural model that has the capability to separate out fact from fiction. It's a long way off, but I've always thought it was possible... Paul. From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Sent: Tuesday, September 3, 2013 7:48:22 AM Subject: Re: [fonc] Final STEP progress report abandoned? Hi Jonathan We are not soliciting proposals, but we like to hear the opinions of others on burning issues and better directions in computing. Cheers, Alan From: Jonathan Edwards edwa...@csail.mit.edu To: fonc@vpri.org Sent: Tuesday, September 3, 2013 4:44 AM Subject: Re: [fonc] Final STEP progress report abandoned? That's great news! We desperately need fresh air. As you know, the way a problem is framed bounds its solutions. Do you already know what problems to work on or are you soliciting proposals? Jonathan From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Cc: Date: Mon, 2 Sep 2013 10:45:50 -0700 (PDT) Subject: Re: [fonc] Final STEP progress report abandoned? Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan From: Dan Melchione dm.f...@melchione.com To: fonc@vpri.org Sent: Monday, September 2, 2013 10:40 AM Subject: [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
David Barbour dmbarb...@gmail.com writes: But favoring a simpler programming model - e.g. one with only integers, and where the only operation is to add or compare them -might also help. If the problem domain is X then I agree a minimal X-specific DSL is a good idea, although purely numeric problems are often amenable to more direct solutions; eg. dynamic programming, gradient-based methods, etc. Cheers, Chris ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
In a sense, but on a higher level, it's more focused on the stretegic desgin. http://impactmapping.org/drawing.php Also take a look at for related modelling technique http://www.b-mc2.com/2013/04/26/from-business-strategy-to-solution-a-unified-conceptual-framework/ And for that matter http://en.wikipedia.org/wiki/Thinking_processes_%28theory_of_constraints%29 BR, John On Thu, Sep 5, 2013 at 8:00 PM, John Carlson yottz...@gmail.com wrote: What is an impact map model? Is it something like a use case? On Sep 5, 2013 12:33 PM, John Nilsson j...@milsson.nu wrote: Even if the different domains are different it should still be possible to generalize the basic framework and strategy used. I imagine layers of models each constrained by the upper metamodel and a fitness function feeding a generator to create the next layer down until you reach the bottom executable layer. In a sense this is what humans do no? Begin with the impact map model , derive from that an activity model, derive from that a high level activity support model, derive from that acceptance criteria, derive from that acceptance test examples, derive from that a low level interaction state machine an so on... In the human case I belive the approach modelled by the kanban katas seems appropriate. Nested stacks of hypotheses to try in a disciplined PDCA cycle. BR 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 ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
John Nilsson j...@milsson.nu writes: Even if the different domains are different it should still be possible to generalize the basic framework and strategy used. I imagine layers of models each constrained by the upper metamodel and a fitness function feeding a generator to create the next layer down until you reach the bottom executable layer. In a sense this is what humans do no? Begin with the impact map model , derive from that an activity model, derive from that a high level activity support model, derive from that acceptance criteria, derive from that acceptance test examples, derive from that a low level interaction state machine an so on... In the human case I belive the approach modelled by the kanban katas seems appropriate. Nested stacks of hypotheses to try in a disciplined PDCA cycle. The problem with (naively) adding meta-levels is that our costs go up dramatically. Using your example, we might define a test suite and evolve a state-machine which passes all the tests. We might then decide to replace our hard-coded tests with a higher-level optimisation process: we define our acceptance criteria and evolve a test suite for those criteria and a state-machine for those tests. This is much more expensive, since in order to evaluate a test suite we need to evolve a state-machine for it. Likewise, if we add another level and define, say, a model of our business and market, we could evolve product features based on their predicted return on investment. Evaluating each potential feature would require we evolve the acceptance criteria for its implementation; each candidate set of acceptance criteria requires its own evolved test suite; each candidate test suite requires an evolved state-machine. When we consider that realistic optimisation algorithms can require upwards of a million fitness evaluations, it's clear that we can't naively bolt extra meta-levels on when we get stuck. There are ways around this though, by collapsing the levels into one self-improving level or two co-evolving levels. An example of a one-level system is evolving an economy of virtual agents, where rewards come in the form of virtual currency which can be used to bid for CPU time. Bankrupt agents can be discarded and currency/CPU time can be traded between agents. This allows meta-agents to make a living by spotting opportunities for the other agents. Any agent which is too meta to be worth it will either go bankrupt or will be out-bidded by more efficient less-meta agents. One example is the Hayak Machine. This can be augmented by techniques like autoconstructive evolution, where the process for generating new agents is part of the agents themselves, and thus can evolve. Co-evolving systems use each other as their meta-level. For example, we might let each system play a zero-sum game involving the problem domain (this rewards learning more about the domain); we might have one system pose questions/problems for the other to solve (again, rewarding domain knowledge); we might have each system predict the other's behaviour and give reward based on unpredictability (rewarding novelty and exploration). I highly recommend Juergen's publications page, which covers many different optimisation algorithms: http://www.idsia.ch/~juergen/onlinepub.html On a related not I've been making some toy implementations of many optimisation algorithms in Javascript (some are still empty): http://chriswarbo.net/index.php?page=ceditype=miscid=1%2F4%2F28%2F29 Cheers, Chris ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
On Wed, Sep 04, 2013 at 04:28:52PM -0700, Simon Forman wrote: There is a (the?) universal logical notation being elucidated right now that seems to me to be very promising for this sort of stuff. Is it intrinsically massively parallel? If it isn't, it's probably not going to go places. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
Eugen Leitl eu...@leitl.org writes: On Wed, Sep 04, 2013 at 04:28:52PM -0700, Simon Forman wrote: There is a (the?) universal logical notation being elucidated right now that seems to me to be very promising for this sort of stuff. Is it intrinsically massively parallel? If it isn't, it's probably not going to go places. I don't think I've ever seen a logical framework which isn't intrinsically massively parallel; ie. it seems to me like sequencing is always an explicit construct, whether it's applicative functors, arrows, monads, linear/uniqueness types, etc. There are cases like Prolog and Pure where the evaluation/search order is defined, but I would still represent sequences of instructions using something like a list (applicative functor) or tree (free monad), freeing up implementations to find the elements in parallel whilst ensuring they're executed in sequence. Maybe I've been using Haskell for too long? ;) Cheers, Chris ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
David Barbour dmbarb...@gmail.com writes: Regarding the language under-the-hood: If we want to automate software development, we would gain a great deal of efficiency and robustness by focusing on languages whose programs are easy to evaluate, and that will (a) be meaningful/executable by construction, and (b) avoid redundant meanings (aka full abstraction, or near enough). Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I imagine a developer who favors such languages would have an advantage over one who sticks with C. My interest in Programming Language Theory sprang from my interest in AI and code generation (things like the Goedel Machine which Simon mentioned), specifically what makes a language easy/hard to use by a machine. Regarding 'syntaxless' languages, I agree that this is a desirable property for the IR of a program-generator. Due to the combinatorial nature of the problem, we need all the efficiency we can get. Removing syntax can improve this by dramatically reducing the search space without sacrificing potential solutions. However, there can often be a semantic cost in trying to assign meaning to arbitrary combinations of tokens. This can complicate the runtime (eg. using different stacks for different datatypes) and require arbitrary/ad-hoc rules and special-cases (eg. empty stacks). These can make the landscape smoother, but lead to larger solutions (in bits), which is the dominant factor on scaling. It can also make learning/reasoning about the language and problem domain harder for meta-level algorithms, eg. Estimation of Distribution. I think this semantic cost is often not appreciated, since it's hidden in the running time rather than being immediately apparent like malformed programs are. At the end of the day, it doesn't matter if we hit millions of syntax errors if we get good quality solutions in an acceptable amount of time. It may be the case that telling our algorithms when they're making no sense will give them the information they need to find better solutions faster. Cheers, Chris ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
On Thu, Sep 5, 2013 at 8:17 AM, Carl Gundel ca...@psychesystems.com wrote: I’m not sure why you think I’m attributing special reverence to computing. Break all the rules, please. ;-) To say you're touching the hem generally implies you're also on your knees and bowing your head. ** ** The claim that life is somehow inefficient so that computing should be different begs for qualification. I’m sure there are a lot of ideas that can be gleaned for future computing technologies by studying biology, but living things are not computers in the sense of what people mean when they use the term computer. It’s apples and oranges. I agree we can gain some inspirations from life. Genetic programming, neural networks, the development of robust systems in terms of reactive cycles, focus on adaptive rather than abstractive computation. But it's easy to forget that life had millions or billions of years to get where it's at, and that it has burned through materials, that it fails to recognize the awesomeness of many of the really cool 'programs' it has created (like Wolfgang Amadeus Mozart ;). A lot of logic must be encoded in the heuristic to evaluate some programs as better than others. It can be difficult to recognize value that one did not anticipate finding. It can be difficult to recognize how a particular mutation might evolve into something great, especially if it causes problems in the short term. The search space is unbelievably large, and it can take a long time to examine it. It isn't a matter of life being 'inefficient'. It's that, if we want to use this 'genetic programming' technique that life used to create cool things like Mozart, we need to be vastly more efficient than life at searching the spaces, developing value, recognizing how small things might contribute to a greater whole and thus should be preserved. In practice, this will often require very special-purpose applications - e.g. genetic programming for the procedural generation of cities in a video game might use a completely different set of primitives than genetic programming for the facial structures and preferred behaviors/habits of NPCs (and it still wouldn't be easy to decide whether a particular habit contributes value). Machine code - by which I mean x86 code and similar - would be a terribly inefficient way to obtain value using genetic programming. It is far too fragile (breaks easily under minor mutations), too fine grained (resulting in a much bigger search space), and far too difficult to evaluate. Though, we could potentially create a virtual-machine code suitable for genetic programming. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
I would say that 'life' as we know, and understand, it has 'chosen' robustness and redundancy instead of efficiency. It doesn't matter how efficient you *were* if one glitch kills you. I used quotes are because I am anthromorphizing evolution. It seems to me that some of the ideas here are approaching the same ideas ... glom together stauff that works, even if it not the most efficient solution, but good enough. Choose you goals wisely. David On Thu, Sep 5, 2013 at 8:17 AM, Carl Gundel ca...@psychesystems.com wrote: I’m not sure why you think I’m attributing special reverence to computing. Break all the rules, please. ;-) ** ** The claim that life is somehow inefficient so that computing should be different begs for qualification. I’m sure there are a lot of ideas that can be gleaned for future computing technologies by studying biology, but living things are not computers in the sense of what people mean when they use the term computer. It’s apples and oranges. ** ** -Carl ** ** *From:* fonc-boun...@vpri.org [mailto:fonc-boun...@vpri.org] *On Behalf Of *David Barbour *Sent:* Thursday, September 05, 2013 10:39 AM *To:* Fundamentals of New Computing *Subject:* Re: [fonc] Final STEP progress report abandoned? ** ** If you treat computing that reverently, you'll never improve it. ** ** On Thu, Sep 5, 2013 at 6:19 AM, Carl Gundel ca...@psychesystems.com wrote: Design systems that are more efficient than life? More efficient in what ways, for what purposes? For the purposes of computing? Can we define what computing should become? We are only touching the hem of the garment, I think. ;-) -Carl *From:* fonc-boun...@vpri.org [mailto:fonc-boun...@vpri.org] *On Behalf Of *David Barbour *Sent:* Thursday, September 05, 2013 12:05 AM *To:* Fundamentals of New Computing *Subject:* Re: [fonc] Final STEP progress report abandoned? Life is, in some ways, less messy than binary. At least less fragile. DNA cannot encode absolute offsets, for example. Closer to associative memory. In any case, we want to reach useful solutions quickly. Life doesn't evolve at a scale commensurate with human patience, despite having vastly more parallelism and memory. So we need to design systems more efficient, and perhaps more specialized, than life. On Sep 4, 2013 5:37 PM, Casey Ransberger casey.obrie...@gmail.com wrote: John, you're right. I have seen raw binary used as DNA and I left that out. This could be my own prejudice, but it seems like a messy way to do things. I suppose I want to limit what the animal can do by constraining it to some set of safe primitives. Maybe that's a silly thing to worry about, though. If we're going to grow software, I suppose maybe I should expect the process to be as messy as life is:) On Wed, Sep 4, 2013 at 4:06 PM, John Carlson yottz...@gmail.com wrote:** ** I meant to say you could perform and record operations while the program was running. I think people have missed machine language as syntaxless. On Sep 4, 2013 4:17 PM, John Carlson yottz...@gmail.com wrote: On Sep 3, 2013 8:25 PM, Casey Ransberger casey.obrie...@gmail.com wrote: It yields a kind of syntaxlessness that's interesting. Our TWB/TE language was mostly syntaxless. Instead, you performed operations on desktop objects that were recorded (like AppleScript, but with an iconic language). You could even record while the program was running. We had a tiny bit of syntax in our predicates, stuff like range and set notation. Can anyone describe Minecraft's syntax and semantics? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- CALIFORNIA H U M A N ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ** ** ___ 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] Final STEP progress report abandoned?
On Sep 5, 2013 11:18 AM, David Barbour dmbarb...@gmail.com wrote: But it's easy to forget that life had millions or billions of years to get where it's at, and that it has burned through materials, that it fails to recognize the awesomeness of many of the really cool 'programs' it has created (like Wolfgang Amadeus Mozart ;). We recognize mozart and copy him, and innovate on top of him like EMI and Emily did or could. I believe our culture lives in a bit of paranoia about accepting others programs, and that's where we fail. We also think that government research should not compete with commercial interests--at least when research is being done by a nonprofit. Has anyone done research on improving programs? I know of some where you try to find bugs in programs. What about actually detecting and replacing or improving algorithms? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
Ah. Perhaps a more direct reference to the elephant would have worked better. :) Yeah, I'll grant the metaphor that we have a lot of different people focused on different parts of the computational elephant. On Thu, Sep 5, 2013 at 9:40 AM, Carl Gundel ca...@psychesystems.com wrote: By touching the hem in this sense I meant that we’ve got a blindfold on and we’re trying to guess what the elephant looks like by touching any one part of it. ** ** -Carl ** ** *From:* fonc-boun...@vpri.org [mailto:fonc-boun...@vpri.org] *On Behalf Of *David Barbour *Sent:* Thursday, September 05, 2013 12:16 PM *To:* Fundamentals of New Computing *Subject:* Re: [fonc] Final STEP progress report abandoned? ** ** ** ** On Thu, Sep 5, 2013 at 8:17 AM, Carl Gundel ca...@psychesystems.com wrote: I’m not sure why you think I’m attributing special reverence to computing. Break all the rules, please. ;-) ** ** To say you're touching the hem generally implies you're also on your knees and bowing your head. ___ 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] Final STEP progress report abandoned?
By touching the hem in this sense I meant that we’ve got a blindfold on and we’re trying to guess what the elephant looks like by touching any one part of it. -Carl From: fonc-boun...@vpri.org [mailto:fonc-boun...@vpri.org] On Behalf Of David Barbour Sent: Thursday, September 05, 2013 12:16 PM To: Fundamentals of New Computing Subject: Re: [fonc] Final STEP progress report abandoned? On Thu, Sep 5, 2013 at 8:17 AM, Carl Gundel ca...@psychesystems.com wrote: I’m not sure why you think I’m attributing special reverence to computing. Break all the rules, please. ;-) To say you're touching the hem generally implies you're also on your knees and bowing your head. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
David Barbour dmbarb...@gmail.com writes: I agree we can gain some inspirations from life. Genetic programming, neural networks, the development of robust systems in terms of reactive cycles, focus on adaptive rather than abstractive computation. But it's easy to forget that life had millions or billions of years to get where it's at, and that it has burned through materials, that it fails to recognize the awesomeness of many of the really cool 'programs' it has created (like Wolfgang Amadeus Mozart ;). Artificial neural networks and genetic programming are often grouped together, eg. as nature-inspired optimisation, but it's important to keep in mind that their natural counterparts work on very different timescales. Neural networks can take a person's lifetime to become proficient at some task, but genetics can take a planet's lifetime ;) (of course, there has been a lot of overlap as brains are the product of evolution and organisms must compete in a world full of brains). A lot of logic must be encoded in the heuristic to evaluate some programs as better than others. It can be difficult to recognize value that one did not anticipate finding. It can be difficult to recognize how a particular mutation might evolve into something great, especially if it causes problems in the short term. The search space is unbelievably large, and it can take a long time to examine it. There is interesting work going on in artificial curiosity, where regular rewards/fitness/reinforcement is treated as external, but there is also an internal reward, usually based on finding new patterns and how to predict/compress them. In theory this rewards a system for learning more about its domain, regardless of whether it leads to an immediate increase in the given fitness function. There are some less drastic departures from GP like Fitness Uniform Optimisation, which values population diversity rather than high fitness: we only need one fit individual, the rest can explore. Bayesian Exploration is also related: which addresses the exploration/exploitation problem explicitly by assuming that a more-fit solution exists and choosing our next candidate based on the highest expected fitness (this is known as 'optimism'). These algorithms attempt to value unique/novel solutions, which may contribute to solving 'deceptive' problems; where high-fitness solutions may be surrounded by low-fitness ones. It isn't a matter of life being 'inefficient'. It's that, if we want to use this 'genetic programming' technique that life used to create cool things like Mozart, we need to be vastly more efficient than life at searching the spaces, developing value, recognizing how small things might contribute to a greater whole and thus should be preserved. In practice, this will often require very special-purpose applications - e.g. genetic programming for the procedural generation of cities in a video game might use a completely different set of primitives than genetic programming for the facial structures and preferred behaviors/habits of NPCs (and it still wouldn't be easy to decide whether a particular habit contributes value). You're dead right, but at the same time these kind of situations make me instinctively want to go up a level and solve the meta-problem. If I were programming Java, I'd want a geneticProgrammingFactory ;) Machine code - by which I mean x86 code and similar - would be a terribly inefficient way to obtain value using genetic programming. It is far too fragile (breaks easily under minor mutations), too fine grained (resulting in a much bigger search space), and far too difficult to evaluate. True. 'Optimisation' is often seen as the quest to get closer to machine code, when actually there are potentially bigger gains to be had by working at a level where we know enough about our code to eliminate lots of it. For example all of the fusion work going on in Haskell, or even something as everyday as constant folding. Whilst humans can scoff that 'real' programmers would have written their assembly with all of these optimisations already-applied, it's far more likely that auto-generated code will be full of such high-level optimisation potentials. For example, we could evolve programs using an interpreter until they reach a desired fitness, then compile the best solution with a highly-aggressive optimising compiler for use in production. Though, we could potentially create a virtual-machine code suitable for genetic programming. This will probably be the best option for most online adaptation, where the system continues to learn over the course of its life. The search must use high-level code to be efficient, but compiling every candidate when most will only be run once usually won't be worth it. The counter-examples are where evaluation takes long enough to offset the initial compilation cost, and problems where compiler optimisations can have a significant effect on fitness (eg. heavy
Re: [fonc] Final STEP progress report abandoned?
On Sep 5, 2013 11:57 AM, David Barbour dmbarb...@gmail.com wrote: On Thu, Sep 5, 2013 at 9:41 AM, John Carlson yottz...@gmail.com wrote: Has anyone done research on improving programs? I know of some where you try to find bugs in programs. What about actually detecting and replacing or improving algorithms? Juergen's work on the Goedel machine seems related. I had stumbled upon Juergen's page a few years ago. Thanks for the reminder. I'm still trying to figure out how to apply it. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
Even if the different domains are different it should still be possible to generalize the basic framework and strategy used. I imagine layers of models each constrained by the upper metamodel and a fitness function feeding a generator to create the next layer down until you reach the bottom executable layer. In a sense this is what humans do no? Begin with the impact map model , derive from that an activity model, derive from that a high level activity support model, derive from that acceptance criteria, derive from that acceptance test examples, derive from that a low level interaction state machine an so on... In the human case I belive the approach modelled by the kanban katas seems appropriate. Nested stacks of hypotheses to try in a disciplined PDCA cycle. BR John ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
So I guess I would apply a goedel machine by looking at http request and response or sql*net request and response. Is there a goedel machine that work on 2 inputs and 2 outputs, or do you just label them, reducing the number of inputs and outputs? On Sep 5, 2013 12:22 PM, John Carlson yottz...@gmail.com wrote: On Sep 5, 2013 11:57 AM, David Barbour dmbarb...@gmail.com wrote: On Thu, Sep 5, 2013 at 9:41 AM, John Carlson yottz...@gmail.com wrote: Has anyone done research on improving programs? I know of some where you try to find bugs in programs. What about actually detecting and replacing or improving algorithms? Juergen's work on the Goedel machine seems related. I had stumbled upon Juergen's page a few years ago. Thanks for the reminder. I'm still trying to figure out how to apply it. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
What is an impact map model? Is it something like a use case? On Sep 5, 2013 12:33 PM, John Nilsson j...@milsson.nu wrote: Even if the different domains are different it should still be possible to generalize the basic framework and strategy used. I imagine layers of models each constrained by the upper metamodel and a fitness function feeding a generator to create the next layer down until you reach the bottom executable layer. In a sense this is what humans do no? Begin with the impact map model , derive from that an activity model, derive from that a high level activity support model, derive from that acceptance criteria, derive from that acceptance test examples, derive from that a low level interaction state machine an so on... In the human case I belive the approach modelled by the kanban katas seems appropriate. Nested stacks of hypotheses to try in a disciplined PDCA cycle. BR 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] Final STEP progress report abandoned?
David Barbour dmbarb...@gmail.com writes: On Thu, Sep 5, 2013 at 5:35 AM, Chris Warburton chriswa...@googlemail.comwrote: there can often be a semantic cost in trying to assign meaning to arbitrary combinations of tokens. This can complicate the runtime (eg. using different stacks for different datatypes) and require arbitrary/ad-hoc rules and special-cases (eg. empty stacks). The concatenative language I'm developing uses multiple stacks, but it's about different stacks for different tasks. I think this works well conceptually, when dealing with concurrent dataflows or workflows. The system I had in mind when I wrote this was the Push 3 language, which is designed for genetic programming. Its types are integers, booleans, floats and code, and to prevent type errors like true 5 + it uses a different stack for each type, so in that example true will be pushed to the boolean stack, 5 will be pushed on to the integer stack and + will act on the integer stack (or float stack, depending whether we write INTEGER.+ or FLOAT.+). Unfortunately this leads to a proliferation of stack-manipulation functions; by my reckoning there are 54 primitives (9 instructions * 6 stacks, including the NAME and EXEC stacks). It also makes polymorphism impossible (eg. a generic + for floats and ints). I think this semantic cost is often not appreciated, since it's hidden in the running time rather than being immediately apparent like malformed programs are. Eh, that isn't an issue, really. Creating strongly type-safe concatenative languages (where types are fully inferred) isn't difficult. We can ensure it is immediately apparent that programs are malformed without actually running them. I agree that we can catch erroneous programs statically, if the language allows errors. However, many languages designed for genetic programming actually get rid of errors completely (eg. by skipping nonsensical instructions); I was pointing out how this can cause inefficiencies, despite it narrowing-down the search space. Push 3 pays by having longer encodings, which requires the search to correctly set more bits. Since this price is paid by every token in every candidate, it can impact scaling. Choosing concatenative and syntax-free languages is probably a good choice for generating programs since it removes the possibility of syntax errors, but removing the possibility of errors completely isn't always a good thing. We could even use multiple machine-readable error messages (eg. numbered errors) to give information to a meta-learning layer about what it's doing wrong. Cheers, Chris ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
All very good points, Chris. On Thu, Sep 5, 2013 at 10:27 AM, Chris Warburton chriswa...@googlemail.comwrote: David Barbour dmbarb...@gmail.com writes: I agree we can gain some inspirations from life. Genetic programming, neural networks, the development of robust systems in terms of reactive cycles, focus on adaptive rather than abstractive computation. But it's easy to forget that life had millions or billions of years to get where it's at, and that it has burned through materials, that it fails to recognize the awesomeness of many of the really cool 'programs' it has created (like Wolfgang Amadeus Mozart ;). Artificial neural networks and genetic programming are often grouped together, eg. as nature-inspired optimisation, but it's important to keep in mind that their natural counterparts work on very different timescales. Neural networks can take a person's lifetime to become proficient at some task, but genetics can take a planet's lifetime ;) (of course, there has been a lot of overlap as brains are the product of evolution and organisms must compete in a world full of brains). A lot of logic must be encoded in the heuristic to evaluate some programs as better than others. It can be difficult to recognize value that one did not anticipate finding. It can be difficult to recognize how a particular mutation might evolve into something great, especially if it causes problems in the short term. The search space is unbelievably large, and it can take a long time to examine it. There is interesting work going on in artificial curiosity, where regular rewards/fitness/reinforcement is treated as external, but there is also an internal reward, usually based on finding new patterns and how to predict/compress them. In theory this rewards a system for learning more about its domain, regardless of whether it leads to an immediate increase in the given fitness function. There are some less drastic departures from GP like Fitness Uniform Optimisation, which values population diversity rather than high fitness: we only need one fit individual, the rest can explore. Bayesian Exploration is also related: which addresses the exploration/exploitation problem explicitly by assuming that a more-fit solution exists and choosing our next candidate based on the highest expected fitness (this is known as 'optimism'). These algorithms attempt to value unique/novel solutions, which may contribute to solving 'deceptive' problems; where high-fitness solutions may be surrounded by low-fitness ones. It isn't a matter of life being 'inefficient'. It's that, if we want to use this 'genetic programming' technique that life used to create cool things like Mozart, we need to be vastly more efficient than life at searching the spaces, developing value, recognizing how small things might contribute to a greater whole and thus should be preserved. In practice, this will often require very special-purpose applications - e.g. genetic programming for the procedural generation of cities in a video game might use a completely different set of primitives than genetic programming for the facial structures and preferred behaviors/habits of NPCs (and it still wouldn't be easy to decide whether a particular habit contributes value). You're dead right, but at the same time these kind of situations make me instinctively want to go up a level and solve the meta-problem. If I were programming Java, I'd want a geneticProgrammingFactory ;) Machine code - by which I mean x86 code and similar - would be a terribly inefficient way to obtain value using genetic programming. It is far too fragile (breaks easily under minor mutations), too fine grained (resulting in a much bigger search space), and far too difficult to evaluate. True. 'Optimisation' is often seen as the quest to get closer to machine code, when actually there are potentially bigger gains to be had by working at a level where we know enough about our code to eliminate lots of it. For example all of the fusion work going on in Haskell, or even something as everyday as constant folding. Whilst humans can scoff that 'real' programmers would have written their assembly with all of these optimisations already-applied, it's far more likely that auto-generated code will be full of such high-level optimisation potentials. For example, we could evolve programs using an interpreter until they reach a desired fitness, then compile the best solution with a highly-aggressive optimising compiler for use in production. Though, we could potentially create a virtual-machine code suitable for genetic programming. This will probably be the best option for most online adaptation, where the system continues to learn over the course of its life. The search must use high-level code to be efficient, but compiling every candidate when most will only be run once usually won't be worth it. The
Re: [fonc] Final STEP progress report abandoned?
On Thu, Sep 5, 2013 at 11:40 AM, Chris Warburton chriswa...@googlemail.comwrote: to prevent type errors like true 5 + it uses a different stack for each type I think these errors might not be essential to prevent. But we might want to support some redundant structure, i.e. something like 'genes' where multiple agents contribute to a property, such that if some of them error out they don't ruin the entire model. If we think in terms of a code-base, consider each sample in the population having two definitions for each word in the code-base. Each time we use a word, we apply both definitions, and if one of them doesn't make sense we discard it; if both make some sense, we combine the results in some simple way. The 'words' in this case would be like genes, and we could easily model sexual recombinations. Usefully, we could also model hierarchical 'stages' such that lower-level words use primitives, but higher-level words use lower-level words. This would allow us to scale upwards: codons, proteins, organelles, cells, organs, etc. Anyhow, there are a lot of directions we can take such things. Avoiding type-errors isn't the main issue; I think keeping it simple and supporting some redundancy is much more useful. But favoring a simpler programming model - e.g. one with only integers, and where the only operation is to add or compare them -might also help. many languages designed for genetic programming actually get rid of errors completely (eg. by skipping nonsensical instructions); I see. If you want to avoid errors completely, it is always possible to ensure consistent input and output types for each named 'gene' or 'codon', while allowing many implementations. The lowest level genes or codons could be automatically generated outside the normal genetic mechanism (using brute-force logic to find instances of a type), and occasionally injected into a few members of the population (to model mutations and such). Best, Dave ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
On 09/05/2013 at 4:05 AM, Eugen Leitl eu...@leitl.org wrote: On Wed, Sep 04, 2013 at 04:28:52PM -0700, Simon Forman wrote: There is a (the?) universal logical notation being elucidated right now that seems to me to be very promising for this sort of stuff. Is it intrinsically massively parallel? Yes. ;-) ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
On Thu, Sep 5, 2013 at 5:35 AM, Chris Warburton chriswa...@googlemail.comwrote: there can often be a semantic cost in trying to assign meaning to arbitrary combinations of tokens. This can complicate the runtime (eg. using different stacks for different datatypes) and require arbitrary/ad-hoc rules and special-cases (eg. empty stacks). The concatenative language I'm developing uses multiple stacks, but it's about different stacks for different tasks. I think this works well conceptually, when dealing with concurrent dataflows or workflows. I think this semantic cost is often not appreciated, since it's hidden in the running time rather than being immediately apparent like malformed programs are. Eh, that isn't an issue, really. Creating strongly type-safe concatenative languages (where types are fully inferred) isn't difficult. We can ensure it is immediately apparent that programs are malformed without actually running them. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
John Carlson yottz...@gmail.com writes: On Sep 5, 2013 11:57 AM, David Barbour dmbarb...@gmail.com wrote: On Thu, Sep 5, 2013 at 9:41 AM, John Carlson yottz...@gmail.com wrote: Has anyone done research on improving programs? I know of some where you try to find bugs in programs. What about actually detecting and replacing or improving algorithms? Juergen's work on the Goedel machine seems related. I had stumbled upon Juergen's page a few years ago. Thanks for the reminder. I'm still trying to figure out how to apply it. His more-recent PowerPlay system is a bit more practical; it's like a Goedel machine but applies improvements as soon as they're shown to solve a previously-unsolvable problem; it doesn't bother with universal optimality. It's been applied to neural networks so far, but I think it would be useful to apply to a theorem prover: generate theorems you can't prove, along with improved search procedures which can prove them. Cheers, Chris ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
Check out http://www.cat-language.com/ BR John Skickat från min iPhone 4 sep 2013 kl. 01:43 skrev Casey Ransberger casey.obrie...@gmail.com: I've heavily abridged your message David; sorry if I've dropped important context. My words below... On Sep 3, 2013, at 3:04 PM, David Barbour dmbarb...@gmail.com wrote: Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I've only seen this done with two languages. Certainly it's possible in any language with the right semantic chops but so far it seems like we're looking at Lisp (et al) and FORTH. My observation has been that the main quality that yields (ease of recombination? I don't even know what it is for sure) is syntaxlessness. I'd love to know about other languages and qualities of languages that are conducive to this sort of thing, especially if anyone has seen interesting work done with one of the logic languages. ___ 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] Final STEP progress report abandoned?
On Sep 3, 2013 8:25 PM, Casey Ransberger casey.obrie...@gmail.com wrote: It yields a kind of syntaxlessness that's interesting. Our TWB/TE language was mostly syntaxless. Instead, you performed operations on desktop objects that were recorded (like AppleScript, but with an iconic language). You could even record while the program was running. We had a tiny bit of syntax in our predicates, stuff like range and set notation. Can anyone describe Minecraft's syntax and semantics? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
I meant to say you could perform and record operations while the program was running. I think people have missed machine language as syntaxless. On Sep 4, 2013 4:17 PM, John Carlson yottz...@gmail.com wrote: On Sep 3, 2013 8:25 PM, Casey Ransberger casey.obrie...@gmail.com wrote: It yields a kind of syntaxlessness that's interesting. Our TWB/TE language was mostly syntaxless. Instead, you performed operations on desktop objects that were recorded (like AppleScript, but with an iconic language). You could even record while the program was running. We had a tiny bit of syntax in our predicates, stuff like range and set notation. Can anyone describe Minecraft's syntax and semantics? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
On 9/3/13, Casey Ransberger casey.obrie...@gmail.com wrote: ... On Sep 3, 2013, at 3:04 PM, David Barbour dmbarb...@gmail.com wrote: Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I've only seen this done with two languages. Certainly it's possible in any language with the right semantic chops but so far it seems like we're looking at Lisp (et al) and FORTH. My observation has been that the main quality that yields (ease of recombination? I don't even know what it is for sure) is syntaxlessness. I'd love to know about other languages and qualities of languages that are conducive to this sort of thing, especially if anyone has seen interesting work done with one of the logic languages. There is a (the?) universal logical notation being elucidated right now that seems to me to be very promising for this sort of stuff. It is extremely simple yet very powerful (elegant) and it renders logic, circuits, and prolog-ish automated reasoning in a straightforward manner. The roots of it go back to the later work of Charles Sanders Peirce, and was first written up in the iconoclastic Laws of Form by George Spencer-Brown: https://en.wikipedia.org/wiki/Laws_of_Form Several people have been working with it: http://lawsofform.org/people.html See especially: http://markability.net/ http://www.boundary.org/bi/index.html http://www.lawsofform.org/ http://www.boundarymath.org/ http://wbricken.com/ http://iconicmath.com/ I'm interested in it for three reasons: 1) It reveals interesting aspects of logical thought. 2) It's extremely easy to teach and learn. 3) I suspect it will be ideal for e.g. Gödel Machines. Warm regards, ~Simon -- http://twitter.com/SimonForman My blog: http://firequery.blogspot.com/ Also my blog: http://calroc.blogspot.com/ The history of mankind for the last four centuries is rather like that of an imprisoned sleeper, stirring clumsily and uneasily while the prison that restrains and shelters him catches fire, not waking but incorporating the crackling and warmth of the fire with ancient and incongruous dreams, than like that of a man consciously awake to danger and opportunity. --H. P. Wells, A Short History of the World ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
John, you're right. I have seen raw binary used as DNA and I left that out. This could be my own prejudice, but it seems like a messy way to do things. I suppose I want to limit what the animal can do by constraining it to some set of safe primitives. Maybe that's a silly thing to worry about, though. If we're going to grow software, I suppose maybe I should expect the process to be as messy as life is:) On Wed, Sep 4, 2013 at 4:06 PM, John Carlson yottz...@gmail.com wrote: I meant to say you could perform and record operations while the program was running. I think people have missed machine language as syntaxless. On Sep 4, 2013 4:17 PM, John Carlson yottz...@gmail.com wrote: On Sep 3, 2013 8:25 PM, Casey Ransberger casey.obrie...@gmail.com wrote: It yields a kind of syntaxlessness that's interesting. Our TWB/TE language was mostly syntaxless. Instead, you performed operations on desktop objects that were recorded (like AppleScript, but with an iconic language). You could even record while the program was running. We had a tiny bit of syntax in our predicates, stuff like range and set notation. Can anyone describe Minecraft's syntax and semantics? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- CALIFORNIA H U M A N ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
Life is, in some ways, less messy than binary. At least less fragile. DNA cannot encode absolute offsets, for example. Closer to associative memory. In any case, we want to reach useful solutions quickly. Life doesn't evolve at a scale commensurate with human patience, despite having vastly more parallelism and memory. So we need to design systems more efficient, and perhaps more specialized, than life. On Sep 4, 2013 5:37 PM, Casey Ransberger casey.obrie...@gmail.com wrote: John, you're right. I have seen raw binary used as DNA and I left that out. This could be my own prejudice, but it seems like a messy way to do things. I suppose I want to limit what the animal can do by constraining it to some set of safe primitives. Maybe that's a silly thing to worry about, though. If we're going to grow software, I suppose maybe I should expect the process to be as messy as life is:) On Wed, Sep 4, 2013 at 4:06 PM, John Carlson yottz...@gmail.com wrote: I meant to say you could perform and record operations while the program was running. I think people have missed machine language as syntaxless. On Sep 4, 2013 4:17 PM, John Carlson yottz...@gmail.com wrote: On Sep 3, 2013 8:25 PM, Casey Ransberger casey.obrie...@gmail.com wrote: It yields a kind of syntaxlessness that's interesting. Our TWB/TE language was mostly syntaxless. Instead, you performed operations on desktop objects that were recorded (like AppleScript, but with an iconic language). You could even record while the program was running. We had a tiny bit of syntax in our predicates, stuff like range and set notation. Can anyone describe Minecraft's syntax and semantics? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- CALIFORNIA H U M A N ___ 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] Final STEP progress report abandoned?
That's great news! We desperately need fresh air. As you know, the way a problem is framed bounds its solutions. Do you already know what problems to work on or are you soliciting proposals? Jonathan From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Cc: Date: Mon, 2 Sep 2013 10:45:50 -0700 (PDT) Subject: Re: [fonc] Final STEP progress report abandoned? Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan -- *From:* Dan Melchione dm.f...@melchione.com *To:* fonc@vpri.org *Sent:* Monday, September 2, 2013 10:40 AM *Subject:* [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
Hi Jonathan We are not soliciting proposals, but we like to hear the opinions of others on burning issues and better directions in computing. Cheers, Alan From: Jonathan Edwards edwa...@csail.mit.edu To: fonc@vpri.org Sent: Tuesday, September 3, 2013 4:44 AM Subject: Re: [fonc] Final STEP progress report abandoned? That's great news! We desperately need fresh air. As you know, the way a problem is framed bounds its solutions. Do you already know what problems to work on or are you soliciting proposals? Jonathan From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Cc: Date: Mon, 2 Sep 2013 10:45:50 -0700 (PDT) Subject: Re: [fonc] Final STEP progress report abandoned? Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan From: Dan Melchione dm.f...@melchione.com To: fonc@vpri.org Sent: Monday, September 2, 2013 10:40 AM Subject: [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
Hi Kevin At some point I'll gather enough brain cells to do the needed edits and get the report on the Viewpoints server. Dan Amelang is in the process of writing his thesis on Nile, and we will probably put Nile out in a more general form after that. (A nice project would be to do Nile in the Chrome Native Client to get a usable speedy and very compact graphics system for web based systems.) Yoshiki's K-Script has been experimentally implemented on top of Javascript, and we've been learning a lot about this variant of stream-based FRP as it is able to work within someone else's implementation of a language. A lot of work on the cooperating solvers part of STEPS is going on (this was an add-on that wasn't really in the scope of the original proposal). We are taking another pass at the interoperating alien modules problem that was part of the original proposal, but that we never really got around to trying to make progress on it. And, as has been our pattern in the past, we have often alternated end-user systems (especially including children) with the deep systems projects, and we are currently pondering this 50+ year old problem again. A fair amount of time is being put into problem finding (the basic idea is that initially trying to manifest visions of desirable future states is better than going directly into trying to state new goals -- good visions will often help problem finding which can then be the context for picking actual goals). And most of my time right now is being spent in extending environments for research. Cheers Alan From: Kevin Driedger linuxbox+f...@gmail.com To: Alan Kay alan.n...@yahoo.com; Fundamentals of New Computing fonc@vpri.org Sent: Monday, September 2, 2013 2:41 PM Subject: Re: [fonc] Final STEP progress report abandoned? Alan, Can you give us any more details or direction on these research projects? ]{evin ])riedger On Mon, Sep 2, 2013 at 1:45 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan From: Dan Melchione dm.f...@melchione.com To: fonc@vpri.org Sent: Monday, September 2, 2013 10:40 AM Subject: [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
So what will computing be in a hundred years? Will we still painstakingly construct systems with a keyboard interface one letter at a time ? And what systems will we use ? And for what ? Will we use computers for slashing virtual fruits and post images of our breakfast on Facebook version 1000,2 ? What are the future man using computers for ? Karl On Tue, Sep 3, 2013 at 2:01 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Kevin At some point I'll gather enough brain cells to do the needed edits and get the report on the Viewpoints server. Dan Amelang is in the process of writing his thesis on Nile, and we will probably put Nile out in a more general form after that. (A nice project would be to do Nile in the Chrome Native Client to get a usable speedy and very compact graphics system for web based systems.) Yoshiki's K-Script has been experimentally implemented on top of Javascript, and we've been learning a lot about this variant of stream-based FRP as it is able to work within someone else's implementation of a language. A lot of work on the cooperating solvers part of STEPS is going on (this was an add-on that wasn't really in the scope of the original proposal). We are taking another pass at the interoperating alien modules problem that was part of the original proposal, but that we never really got around to trying to make progress on it. And, as has been our pattern in the past, we have often alternated end-user systems (especially including children) with the deep systems projects, and we are currently pondering this 50+ year old problem again. A fair amount of time is being put into problem finding (the basic idea is that initially trying to manifest visions of desirable future states is better than going directly into trying to state new goals -- good visions will often help problem finding which can then be the context for picking actual goals). And most of my time right now is being spent in extending environments for research. Cheers Alan -- *From:* Kevin Driedger linuxbox+f...@gmail.com *To:* Alan Kay alan.n...@yahoo.com; Fundamentals of New Computing fonc@vpri.org *Sent:* Monday, September 2, 2013 2:41 PM *Subject:* Re: [fonc] Final STEP progress report abandoned? Alan, Can you give us any more details or direction on these research projects? ]{evin ])riedger On Mon, Sep 2, 2013 at 1:45 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan -- *From:* Dan Melchione dm.f...@melchione.com *To:* fonc@vpri.org *Sent:* Monday, September 2, 2013 10:40 AM *Subject:* [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
We will have singularity and real AI? We may indeed, or perhaps the last 50 years will replay itself. Progress in artificial intelligence has moved along at a fraction of expectations. I expect that there will be an incredible increase of eye candy, and when you strip it down to the bottom there will still be languages derived from Java, C, Python, BASIC, etc. -Carl From: fonc-boun...@vpri.org [mailto:fonc-boun...@vpri.org] On Behalf Of David Barbour Sent: Tuesday, September 03, 2013 3:50 PM To: Fundamentals of New Computing Subject: Re: [fonc] Final STEP progress report abandoned? what will computing be in a hundred years? We'll have singularity - i.e. software and technology will be developed by AIs. But there will also be a lot of corporate influence on which direction that goes; there will likely be repeated conflicts regarding privacy, ownership, computational rights, the issue of 'patents' and 'copyrights' in a world with high-quality 3D printers, high quality scanners, and AI-created technologies. As always, big companies with deep pockets will hang on through legal actions, lobbying, lashing out at the people and suppressing what some people will argue to be rights or freedoms. Computing will be much more widespread. Sensors and interactive elements will be ubiquitous in our environments, whether we like them or not. (Already, a huge portion of the population carries a multi-purpose sensor device... smartphone. Later, they'll be out of the pockets, on the heads, active all the time.) Before singularity, we'll be able to program on-the-fly, while walking around, using augmented reality, gestures or words, even pen-and-paper [1]. After singularity, programming will be aided heavily by AI even when we want to write our own. Mr. Clippy might have more street smarts and degrees than you. And, yeah, we'll have lots of video games. Procedural generation is already a thing - creating worlds larger than any human could. With AI support, we can actually create on-the-fly, creative content - e.g. like a team of dungeon live masters dedicated to keeping the story interesting, and keeping you on the border between addicted and terrified (or whatever experience the game designer decides for you). Best, Dave [1] http://awelonblue.wordpress.com/2013/07/18/programming-with-augmented-reality/ On Tue, Sep 3, 2013 at 12:04 PM, karl ramberg karlramb...@gmail.com wrote: So what will computing be in a hundred years? Will we still painstakingly construct systems with a keyboard interface one letter at a time ? And what systems will we use ? And for what ? Will we use computers for slashing virtual fruits and post images of our breakfast on Facebook version 1000,2 ? What are the future man using computers for ? Karl On Tue, Sep 3, 2013 at 2:01 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Kevin At some point I'll gather enough brain cells to do the needed edits and get the report on the Viewpoints server. Dan Amelang is in the process of writing his thesis on Nile, and we will probably put Nile out in a more general form after that. (A nice project would be to do Nile in the Chrome Native Client to get a usable speedy and very compact graphics system for web based systems.) Yoshiki's K-Script has been experimentally implemented on top of Javascript, and we've been learning a lot about this variant of stream-based FRP as it is able to work within someone else's implementation of a language. A lot of work on the cooperating solvers part of STEPS is going on (this was an add-on that wasn't really in the scope of the original proposal). We are taking another pass at the interoperating alien modules problem that was part of the original proposal, but that we never really got around to trying to make progress on it. And, as has been our pattern in the past, we have often alternated end-user systems (especially including children) with the deep systems projects, and we are currently pondering this 50+ year old problem again. A fair amount of time is being put into problem finding (the basic idea is that initially trying to manifest visions of desirable future states is better than going directly into trying to state new goals -- good visions will often help problem finding which can then be the context for picking actual goals). And most of my time right now is being spent in extending environments for research. Cheers Alan _ From: Kevin Driedger linuxbox+f...@gmail.com mailto:linuxbox%2bf...@gmail.com To: Alan Kay alan.n...@yahoo.com; Fundamentals of New Computing fonc@vpri.org Sent: Monday, September 2, 2013 2:41 PM Subject: Re: [fonc] Final STEP progress report abandoned? Alan, Can you give us any more details or direction on these research projects? ]{evin ])riedger On Mon, Sep 2, 2013 at 1:45 PM, Alan Kay alan.n...@yahoo.com wrote: Hi
Re: [fonc] Final STEP progress report abandoned?
what will computing be in a hundred years? We'll have singularity - i.e. software and technology will be developed by AIs. But there will also be a lot of corporate influence on which direction that goes; there will likely be repeated conflicts regarding privacy, ownership, computational rights, the issue of 'patents' and 'copyrights' in a world with high-quality 3D printers, high quality scanners, and AI-created technologies. As always, big companies with deep pockets will hang on through legal actions, lobbying, lashing out at the people and suppressing what some people will argue to be rights or freedoms. Computing will be much more widespread. Sensors and interactive elements will be ubiquitous in our environments, whether we like them or not. (Already, a huge portion of the population carries a multi-purpose sensor device... smartphone. Later, they'll be out of the pockets, on the heads, active all the time.) Before singularity, we'll be able to program on-the-fly, while walking around, using augmented reality, gestures or words, even pen-and-paper [1]. After singularity, programming will be aided heavily by AI even when we want to write our own. Mr. Clippy might have more street smarts and degrees than you. And, yeah, we'll have lots of video games. Procedural generation is already a thing - creating worlds larger than any human could. With AI support, we can actually create on-the-fly, creative content - e.g. like a team of dungeon live masters dedicated to keeping the story interesting, and keeping you on the border between addicted and terrified (or whatever experience the game designer decides for you). Best, Dave [1] http://awelonblue.wordpress.com/2013/07/18/programming-with-augmented-reality/ On Tue, Sep 3, 2013 at 12:04 PM, karl ramberg karlramb...@gmail.com wrote: So what will computing be in a hundred years? Will we still painstakingly construct systems with a keyboard interface one letter at a time ? And what systems will we use ? And for what ? Will we use computers for slashing virtual fruits and post images of our breakfast on Facebook version 1000,2 ? What are the future man using computers for ? Karl On Tue, Sep 3, 2013 at 2:01 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Kevin At some point I'll gather enough brain cells to do the needed edits and get the report on the Viewpoints server. Dan Amelang is in the process of writing his thesis on Nile, and we will probably put Nile out in a more general form after that. (A nice project would be to do Nile in the Chrome Native Client to get a usable speedy and very compact graphics system for web based systems.) Yoshiki's K-Script has been experimentally implemented on top of Javascript, and we've been learning a lot about this variant of stream-based FRP as it is able to work within someone else's implementation of a language. A lot of work on the cooperating solvers part of STEPS is going on (this was an add-on that wasn't really in the scope of the original proposal). We are taking another pass at the interoperating alien modules problem that was part of the original proposal, but that we never really got around to trying to make progress on it. And, as has been our pattern in the past, we have often alternated end-user systems (especially including children) with the deep systems projects, and we are currently pondering this 50+ year old problem again. A fair amount of time is being put into problem finding (the basic idea is that initially trying to manifest visions of desirable future states is better than going directly into trying to state new goals -- good visions will often help problem finding which can then be the context for picking actual goals). And most of my time right now is being spent in extending environments for research. Cheers Alan -- *From:* Kevin Driedger linuxbox+f...@gmail.com *To:* Alan Kay alan.n...@yahoo.com; Fundamentals of New Computing fonc@vpri.org *Sent:* Monday, September 2, 2013 2:41 PM *Subject:* Re: [fonc] Final STEP progress report abandoned? Alan, Can you give us any more details or direction on these research projects? ]{evin ])riedger On Mon, Sep 2, 2013 at 1:45 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan -- *From:* Dan Melchione dm.f...@melchione.com *To:* fonc@vpri.org *Sent:* Monday, September 2, 2013 10:40 AM *Subject:* [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned
Re: [fonc] Final STEP progress report abandoned?
I doubt there will be a clear instant of oh, this, just now, was singularity. The ability even of a great AI to improve technologies is limited by its ability to hypothesize and experiment, and understand requirements. More likely, we'll see a lot of automated thinking (constraint solvers, probabilistic models, weighted logics, genetic programming) slowly take over aspects of different products and tasks. Indeed, I'm already seeing this. What humans might call 'real AI' will initially just be the human interfaces - the pieces that automate call centers, or support interactive storytelling. Singularity won't be instantaneous from the POV of the people living within it. Though, it might seem that way from a future historian's perspective. I've been fascinated by the progress in machine learning and deep learning over just the last few years. If you haven't followed them, there have been quite a few strides forward over the last six years or so, in part due to new processing technologies (programmable GPUs, et al.) and in part due to new ways of thinking about algorithms (not really 'new' but they take some time to gain traction) - e.g. the more recent focus on deep learning, and alternatives to backwards propagation such as using genetic programming to set weights and connectivity in neural networks. Regarding the language under-the-hood: If we want to automate software development, we would gain a great deal of efficiency and robustness by focusing on languages whose programs are easy to evaluate, and that will (a) be meaningful/executable by construction, and (b) avoid redundant meanings (aka full abstraction, or near enough). Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I imagine a developer who favors such languages would have an advantage over one who sticks with C. Though, it might still compile to C. On Tue, Sep 3, 2013 at 1:13 PM, Carl Gundel ca...@psychesystems.com wrote: We will have singularity and real AI? We may indeed, or perhaps the last 50 years will replay itself. Progress in artificial intelligence has moved along at a fraction of expectations. ** ** I expect that there will be an incredible increase of eye candy, and when you strip it down to the bottom there will still be languages derived from Java, C, Python, BASIC, etc. -Carl ** ** *From:* fonc-boun...@vpri.org [mailto:fonc-boun...@vpri.org] *On Behalf Of *David Barbour *Sent:* Tuesday, September 03, 2013 3:50 PM *To:* Fundamentals of New Computing *Subject:* Re: [fonc] Final STEP progress report abandoned? ** ** what will computing be in a hundred years? ** ** We'll have singularity - i.e. software and technology will be developed by AIs. But there will also be a lot of corporate influence on which direction that goes; there will likely be repeated conflicts regarding privacy, ownership, computational rights, the issue of 'patents' and 'copyrights' in a world with high-quality 3D printers, high quality scanners, and AI-created technologies. As always, big companies with deep pockets will hang on through legal actions, lobbying, lashing out at the people and suppressing what some people will argue to be rights or freedoms. ** ** Computing will be much more widespread. Sensors and interactive elements will be ubiquitous in our environments, whether we like them or not. (Already, a huge portion of the population carries a multi-purpose sensor device... smartphone. Later, they'll be out of the pockets, on the heads, active all the time.) Before singularity, we'll be able to program on-the-fly, while walking around, using augmented reality, gestures or words, even pen-and-paper [1]. After singularity, programming will be aided heavily by AI even when we want to write our own. Mr. Clippy might have more street smarts and degrees than you. ** ** And, yeah, we'll have lots of video games. Procedural generation is already a thing - creating worlds larger than any human could. With AI support, we can actually create on-the-fly, creative content - e.g. like a team of dungeon live masters dedicated to keeping the story interesting, and keeping you on the border between addicted and terrified (or whatever experience the game designer decides for you). ** ** Best, ** ** Dave ** ** [1] http://awelonblue.wordpress.com/2013/07/18/programming-with-augmented-reality/ ** ** ** ** ** ** On Tue, Sep 3, 2013 at 12:04 PM, karl ramberg karlramb...@gmail.com wrote: So what will computing be in a hundred years? Will we still painstakingly construct systems with a keyboard interface one letter at a time ? And what systems will we use ? And for what ? Will we use computers for slashing virtual fruits and post images of our breakfast on Facebook version 1000,2 ? ** ** What are the future man using computers
Re: [fonc] Final STEP progress report abandoned?
I've heavily abridged your message David; sorry if I've dropped important context. My words below... On Sep 3, 2013, at 3:04 PM, David Barbour dmbarb...@gmail.com wrote: Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I've only seen this done with two languages. Certainly it's possible in any language with the right semantic chops but so far it seems like we're looking at Lisp (et al) and FORTH. My observation has been that the main quality that yields (ease of recombination? I don't even know what it is for sure) is syntaxlessness. I'd love to know about other languages and qualities of languages that are conducive to this sort of thing, especially if anyone has seen interesting work done with one of the logic languages. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
With Forth, you are probably reaching for the definition of a concatenative language like Joy. APL, J, K, etc. would also qualify. On Tue, Sep 3, 2013 at 4:43 PM, Casey Ransberger casey.obrie...@gmail.comwrote: I've heavily abridged your message David; sorry if I've dropped important context. My words below... On Sep 3, 2013, at 3:04 PM, David Barbour dmbarb...@gmail.com wrote: Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I've only seen this done with two languages. Certainly it's possible in any language with the right semantic chops but so far it seems like we're looking at Lisp (et al) and FORTH. My observation has been that the main quality that yields (ease of recombination? I don't even know what it is for sure) is syntaxlessness. I'd love to know about other languages and qualities of languages that are conducive to this sort of thing, especially if anyone has seen interesting work done with one of the logic languages. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- -Brian T. Rice ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
Factor would be another decent example of a concatenative language. But I think arrowized programming models would work better. They aren't limited to a stack, and instead can compute rich types that can be evaluated as documents or diagrams. Further, they're really easy to model in a concatenative language. Further, subprograms can interact through the arrow's model - e.g. sharing data or constraints - thus operating like agents in a multi-agent system; we could feasibly model 'chromosomes' in terms of different agents. I've recently (mid August) started developing a language that has these properties: arrowized, strongly typed, concatenative, reactive. I'm already using Prolog to find functions to help me bootstrap (it seems bootstrap functions are not always the most intuitive :). I look forward to trying some genetic programming, once I'm further along. Best, Dave On Tue, Sep 3, 2013 at 4:45 PM, Brian Rice briantr...@gmail.com wrote: With Forth, you are probably reaching for the definition of a concatenative language like Joy. APL, J, K, etc. would also qualify. On Tue, Sep 3, 2013 at 4:43 PM, Casey Ransberger casey.obrie...@gmail.com wrote: I've heavily abridged your message David; sorry if I've dropped important context. My words below... On Sep 3, 2013, at 3:04 PM, David Barbour dmbarb...@gmail.com wrote: Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I've only seen this done with two languages. Certainly it's possible in any language with the right semantic chops but so far it seems like we're looking at Lisp (et al) and FORTH. My observation has been that the main quality that yields (ease of recombination? I don't even know what it is for sure) is syntaxlessness. I'd love to know about other languages and qualities of languages that are conducive to this sort of thing, especially if anyone has seen interesting work done with one of the logic languages. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- -Brian T. Rice ___ 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] Final STEP progress report abandoned?
Yes, in the case of FORTH, the concatenative property is what's interesting in this regard. It yields a kind of syntaxlessness that's interesting. I have to admit no real familiarity with APL (outside of some stunningly elegant solutions I've read to problems on Project Euler!) Thanks for letting me know that there's a familial relationship with FORTH and APL, Brian:) Also, genetic programming in a Prolog? Anyone? On Sep 3, 2013, at 4:45 PM, Brian Rice briantr...@gmail.com wrote: With Forth, you are probably reaching for the definition of a concatenative language like Joy. APL, J, K, etc. would also qualify. On Tue, Sep 3, 2013 at 4:43 PM, Casey Ransberger casey.obrie...@gmail.com wrote: I've heavily abridged your message David; sorry if I've dropped important context. My words below... On Sep 3, 2013, at 3:04 PM, David Barbour dmbarb...@gmail.com wrote: Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I've only seen this done with two languages. Certainly it's possible in any language with the right semantic chops but so far it seems like we're looking at Lisp (et al) and FORTH. My observation has been that the main quality that yields (ease of recombination? I don't even know what it is for sure) is syntaxlessness. I'd love to know about other languages and qualities of languages that are conducive to this sort of thing, especially if anyone has seen interesting work done with one of the logic languages. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- -Brian T. Rice ___ 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] Final STEP progress report abandoned?
Sorry, I've missed a beat somewhere. Arrowized? What's this bit with arrows? I saw the term arrow earlier and I think I've assumed that it was some slang for the FRP thing (if you think about it, that makes some sense.) But starting with intuitive assumptions is usually a bad plan, so I'd love some clarification if possible. On Sep 3, 2013, at 5:30 PM, David Barbour dmbarb...@gmail.com wrote: Factor would be another decent example of a concatenative language. But I think arrowized programming models would work better. They aren't limited to a stack, and instead can compute rich types that can be evaluated as documents or diagrams. Further, they're really easy to model in a concatenative language. Further, subprograms can interact through the arrow's model - e.g. sharing data or constraints - thus operating like agents in a multi-agent system; we could feasibly model 'chromosomes' in terms of different agents. I've recently (mid August) started developing a language that has these properties: arrowized, strongly typed, concatenative, reactive. I'm already using Prolog to find functions to help me bootstrap (it seems bootstrap functions are not always the most intuitive :). I look forward to trying some genetic programming, once I'm further along. Best, Dave On Tue, Sep 3, 2013 at 4:45 PM, Brian Rice briantr...@gmail.com wrote: With Forth, you are probably reaching for the definition of a concatenative language like Joy. APL, J, K, etc. would also qualify. On Tue, Sep 3, 2013 at 4:43 PM, Casey Ransberger casey.obrie...@gmail.com wrote: I've heavily abridged your message David; sorry if I've dropped important context. My words below... On Sep 3, 2013, at 3:04 PM, David Barbour dmbarb...@gmail.com wrote: Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I've only seen this done with two languages. Certainly it's possible in any language with the right semantic chops but so far it seems like we're looking at Lisp (et al) and FORTH. My observation has been that the main quality that yields (ease of recombination? I don't even know what it is for sure) is syntaxlessness. I'd love to know about other languages and qualities of languages that are conducive to this sort of thing, especially if anyone has seen interesting work done with one of the logic languages. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- -Brian T. Rice ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
Hey Alan, With regards to burning issues and better directions, I want to highlight the communicating with aliens problem as worth of remembering. Machines figuring out on their own a protocol and goals for communication. This might relate to cooperating solvers aspect of your work. Cheers, Tristan On Tue, Sep 3, 2013 at 6:48 AM, Alan Kay alan.n...@yahoo.com wrote: Hi Jonathan We are not soliciting proposals, but we like to hear the opinions of others on burning issues and better directions in computing. Cheers, Alan -- *From:* Jonathan Edwards edwa...@csail.mit.edu *To:* fonc@vpri.org *Sent:* Tuesday, September 3, 2013 4:44 AM *Subject:* Re: [fonc] Final STEP progress report abandoned? That's great news! We desperately need fresh air. As you know, the way a problem is framed bounds its solutions. Do you already know what problems to work on or are you soliciting proposals? Jonathan From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Cc: Date: Mon, 2 Sep 2013 10:45:50 -0700 (PDT) Subject: Re: [fonc] Final STEP progress report abandoned? Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan -- *From:* Dan Melchione dm.f...@melchione.com *To:* fonc@vpri.org *Sent:* Monday, September 2, 2013 10:40 AM *Subject:* [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
Yes, the communication with aliens problem -- in many different aspects -- is going to be a big theme for VPRI over the next few years. Cheers, Alan From: Tristan Slominski tristan.slomin...@gmail.com To: Alan Kay alan.n...@yahoo.com; Fundamentals of New Computing fonc@vpri.org Sent: Tuesday, September 3, 2013 7:25 PM Subject: Re: [fonc] Final STEP progress report abandoned? Hey Alan, With regards to burning issues and better directions, I want to highlight the communicating with aliens problem as worth of remembering. Machines figuring out on their own a protocol and goals for communication. This might relate to cooperating solvers aspect of your work. Cheers, Tristan On Tue, Sep 3, 2013 at 6:48 AM, Alan Kay alan.n...@yahoo.com wrote: Hi Jonathan We are not soliciting proposals, but we like to hear the opinions of others on burning issues and better directions in computing. Cheers, Alan From: Jonathan Edwards edwa...@csail.mit.edu To: fonc@vpri.org Sent: Tuesday, September 3, 2013 4:44 AM Subject: Re: [fonc] Final STEP progress report abandoned? That's great news! We desperately need fresh air. As you know, the way a problem is framed bounds its solutions. Do you already know what problems to work on or are you soliciting proposals? Jonathan From: Alan Kay alan.n...@yahoo.com To: Fundamentals of New Computing fonc@vpri.org Cc: Date: Mon, 2 Sep 2013 10:45:50 -0700 (PDT) Subject: Re: [fonc] Final STEP progress report abandoned? Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan From: Dan Melchione dm.f...@melchione.com To: fonc@vpri.org Sent: Monday, September 2, 2013 10:40 AM Subject: [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ 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] Final STEP progress report abandoned?
Arrows are essentially a formalization of box-and-wire paradigms. http://en.wikibooks.org/wiki/Haskell/Understanding_arrows Arrows represent a rigid structure for dataflow, but are just expressive enough for non-linear composition of subprograms (i.e. parallel pipelines that branch and merge). One might consider this a bitter-sweet spot. For some people, it's too rigid. Fortunately, we can add just a little more flexibility: 1) runtime-configurable boxes/arrows, that might even take another box/arrow as input 2) metaprogramming - components execute in earlier stage than the runtime arrows I support both, but metaprogramming is my preferred approach to flexibility. Box-and-wire paradigms, even arrows, usually run into a problem where they get unwieldy for a single human to construct - too much wiring, too much tweaking, too much temptation to bypass the model (e.g. using a database or tuple space) to integrate different subprograms because we don't want wires all over the place. Metaprogramming overcomes those limitations, and enables structured approaches to deep entanglement where we need them. :) Best, Dave On Tue, Sep 3, 2013 at 6:33 PM, Casey Ransberger casey.obrie...@gmail.comwrote: Sorry, I've missed a beat somewhere. Arrowized? What's this bit with arrows? I saw the term arrow earlier and I think I've assumed that it was some slang for the FRP thing (if you think about it, that makes some sense.) But starting with intuitive assumptions is usually a bad plan, so I'd love some clarification if possible. On Sep 3, 2013, at 5:30 PM, David Barbour dmbarb...@gmail.com wrote: Factor would be another decent example of a concatenative language. But I think arrowized programming models would work better. They aren't limited to a stack, and instead can compute rich types that can be evaluated as documents or diagrams. Further, they're really easy to model in a concatenative language. Further, subprograms can interact through the arrow's model - e.g. sharing data or constraints - thus operating like agents in a multi-agent system; we could feasibly model 'chromosomes' in terms of different agents. I've recently (mid August) started developing a language that has these properties: arrowized, strongly typed, concatenative, reactive. I'm already using Prolog to find functions to help me bootstrap (it seems bootstrap functions are not always the most intuitive :). I look forward to trying some genetic programming, once I'm further along. Best, Dave On Tue, Sep 3, 2013 at 4:45 PM, Brian Rice briantr...@gmail.com wrote: With Forth, you are probably reaching for the definition of a concatenative language like Joy. APL, J, K, etc. would also qualify. On Tue, Sep 3, 2013 at 4:43 PM, Casey Ransberger casey.obrie...@gmail.com wrote: I've heavily abridged your message David; sorry if I've dropped important context. My words below... On Sep 3, 2013, at 3:04 PM, David Barbour dmbarb...@gmail.com wrote: Even better if the languages are good for exploration by genetic programming - i.e. easily sliced, spliced, rearranged, mutated. I've only seen this done with two languages. Certainly it's possible in any language with the right semantic chops but so far it seems like we're looking at Lisp (et al) and FORTH. My observation has been that the main quality that yields (ease of recombination? I don't even know what it is for sure) is syntaxlessness. I'd love to know about other languages and qualities of languages that are conducive to this sort of thing, especially if anyone has seen interesting work done with one of the logic languages. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc -- -Brian T. Rice ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
[fonc] Final STEP progress report abandoned?
Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Final STEP progress report abandoned?
Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan From: Dan Melchione dm.f...@melchione.com To: fonc@vpri.org Sent: Monday, September 2, 2013 10:40 AM Subject: [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ 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] Final STEP progress report abandoned?
Alan, Can you give us any more details or direction on these research projects? ]{evin ])riedger On Mon, Sep 2, 2013 at 1:45 PM, Alan Kay alan.n...@yahoo.com wrote: Hi Dan It actually got written and given to NSF and approved, etc., a while ago, but needs a little more work before posting on the VPRI site. Meanwhile we've been consumed by setting up a number of additional, and wider scale, research projects, and this has occupied pretty much all of my time for the last 5-6 months. Cheers, Alan -- *From:* Dan Melchione dm.f...@melchione.com *To:* fonc@vpri.org *Sent:* Monday, September 2, 2013 10:40 AM *Subject:* [fonc] Final STEP progress report abandoned? Haven't seen much regarding this for a while. Has it been been abandoned or put at such low priority that it is effectively abandoned? ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc