Good points again. I don't see weighted deduction as the core or essence of meta-programming. On the other hand that might not necessarily make it incompatible. It might turn out to be a useful tool in a meta-programming toolkit.
Another question I'm considering at the moment is whether the functional notation in which core content must be expressed should be, as you say, something highly pure like Curry or Mercury, or whether it should be a subset of a more conventional imperative language. Two arguments I'm looking at right now for the latter are that imperative code will be needed in the system at some level, and that the system will in turn have to deal with/understand imperative code for e.g. the verification job. On Tue, Oct 16, 2012 at 9:05 PM, Abram Demski <[email protected]> wrote: > Russel, > > So, you're talking about a programming environment which is: > > --Functional (and "managed" in your specific sense) > --Memoized > --Has a well-integrated argmax function, which can take arbitrary code as > an objective, and do smart things to maximize > > The kind of system I'm thinking of: > > --Computation model is "weighted deduction" as in Dyna > --Supports memoization as part of a suit of optimizations for weighted > deduction > --Supports max as one of the summarization operations > > So, I suppose the goals are not directly compatible. Weighted deduction is > not obviously helpful for metaprogramming! > > On the other hand, I think the sort of flexible decomposition which you > described for maximization (spend specific amounts of time on different > sub-problems) might benefit from some language support. By this I mean that > it may be helpful to have more than just a well-integrated argmax function > which can take (and produce) arbitrary code. > > Some of what you said reminded me of prolog-like reasoning: there are > several ways to achieve a goal (similar to having several rules which may > produce a result), and the system should spend time on each in an > intelligent way (and do so recursively). Merely giving an objective > function to an argmax does not specify this kind of structure. > > This might rely on an integration of functional programming with logical > programming, maybe based on Curry or Mercury. However, that only integrates > constraint structure. In order to specify composeable structure for > real-valued optimization problems, something more like weighted deduction > might be helpful. (But again, it's not so obvious that weighted deduction > is a good model for metaprogramming.) > > On Sun, Oct 14, 2012 at 9:03 AM, Russell Wallace < > [email protected]> wrote: > >> On Fri, Oct 12, 2012 at 6:12 AM, Abram Demski <[email protected]>wrote: >> >> (good thoughts about chunking and memoization which I'm still mulling >> over) >> >> In any case, most of this is wild speculation based on a distinct lack of >>> experience implementing such systems... >>> >> >> Yep. One of the tricky parts of this whole business is it's hard to think >> clearly about what heuristics etc. an AI system could usefully employ >> without being able to try some out; but that would require an adequate >> framework within which to write them; but it's hard to design such a >> framework without having figured out some use cases in detail first; but >> that requires thinking clearly about heuristics etc. Chicken and egg. >> >> In practice I end up basically bouncing back and forth between thinking >> about one or the other, hopefully slowly converging. Right now I'm again >> trying to sketch an end to end use case in the domain of software >> verification on the 'assume you have an ideal language implementation in >> which to write the code' basis. >> *AGI* | Archives <https://www.listbox.com/member/archive/303/=now> >> <https://www.listbox.com/member/archive/rss/303/7190161-766c6f07> | >> Modify <https://www.listbox.com/member/?&> Your Subscription >> <http://www.listbox.com> >> > > > > -- > Abram Demski > http://lo-tho.blogspot.com/ > > *AGI* | Archives <https://www.listbox.com/member/archive/303/=now> > <https://www.listbox.com/member/archive/rss/303/1658954-f53d1a3f> | > Modify<https://www.listbox.com/member/?&>Your Subscription > <http://www.listbox.com> > ------------------------------------------- AGI Archives: https://www.listbox.com/member/archive/303/=now RSS Feed: https://www.listbox.com/member/archive/rss/303/21088071-c97d2393 Modify Your Subscription: https://www.listbox.com/member/?member_id=21088071&id_secret=21088071-2484a968 Powered by Listbox: http://www.listbox.com
