On Sat, Oct 21, 2017 at 09:58:20AM -0400, John Clark wrote: > On Sat, Oct 21, 2017 at 12:33 AM, Brent Meeker <meeke...@verizon.net> wrote: > > > > > The problem is that, like most real problems, improving computer code has > > no simple one-dimensional measure of "better". Go games are won or lost. > > > > A computer program that does the same thing as another but is smaller and > executes faster is objectively better > ; and although there is no guarantee small fast programs usually have > fewer bugs than large slow programs, and the bugs they do have are easier > to find and fix. > > And if you complain that speed size and robustness are 3 dimensions not one > then try making the most money. That's the great thing about the Free > Market, one dimension rules them all. >
And in any case, there is such a thing as multiobjective optimisation, by using the so-called Pareto frontal method. I agree with John, that machine learning could be used to optimise attributes such as performance, code quality (which is related to size), a process known in the industry as refactoring, but in order to do that one also needs formal verification techniques that proves that the resultant code satisfies the original design requirements. Not much existing code is written in such a way to make that possible. That suggests another possible use for AI - take an existing code, and get it to write unit tests that improves code coverage (stopping when 100% coverage is reached). However, you cannot remove a human completely from the loop, as when I do this process manually, bugs are found and removed, which is one of a number of positive side-effects of this procedure. The trouble is there is still a gap between 100% code coverage, and correctly implementing the requirements... -- ---------------------------------------------------------------------------- Dr Russell Standish Phone 0425 253119 (mobile) Principal, High Performance Coders Visiting Senior Research Fellow hpco...@hpcoders.com.au Economics, Kingston University http://www.hpcoders.com.au ---------------------------------------------------------------------------- -- You received this message because you are subscribed to the Google Groups "Everything List" group. To unsubscribe from this group and stop receiving emails from it, send an email to everything-list+unsubscr...@googlegroups.com. To post to this group, send email to everything-list@googlegroups.com. Visit this group at https://groups.google.com/group/everything-list. For more options, visit https://groups.google.com/d/optout.