Haven't we been there already? Systems that would run code, no matter what? The result was, that systems could be hacked by committing flawed code- which would execute completely different then intended without ever throwing a error message? The Error this was, brought forth the fail early, fail loud approach?
Self Healing Code with clojure.spec
11–20 of 30 posts
Re: Self Healing Code with clojure.spec
#12So basically, error handling code? I apologize, but I don't see what's new in this?
All of your error handling code re-writes functions in live code to replace failing function calls with calls to function that would succeed?
But I guess that saying that your system died from autoimmune disease is way more "exciting" than saying that it died from a segfault.
Re: Self Healing Code with clojure.spec
#13Good idea. I get that it was a demonstration of the application of spec but for a real implementation of self-healing code, in my opinion, there needs to be a way to verify that the problem the matched functions are supposed to be solving is the same instead of relying on some sort of statistical confidence via IO sampling.
(Genuinely curious.)
Re: Self Healing Code with clojure.spec
#14But maybe a similar method could be used as part of static analysis to help programmers. It could look through your functions and search for library functions you could import to replace them with. Or it could look for functions that do very nearly the same, but handle edge cases differently.
Re: Self Healing Code with clojure.spec
#15(This comment is not meant as a criticism of the blog post btw, just a slightly related question)
Re: Self Healing Code with clojure.spec
#16I don't think I'd want code to self-heal on the fly, even less in anything safety critical. But maybe a similar method could be used as part of static analysis to help programmers. It could look through your functions and search for library functions you could import to replace them with. Or it could look for functions that do very nearly the same, but handle edge cases differently.
Re: Self Healing Code with clojure.spec
#17Good idea. I get that it was a demonstration of the application of spec but for a real implementation of self-healing code, in my opinion, there needs to be a way to verify that the problem the matched functions are supposed to be solving is the same instead of relying on some sort of statistical confidence via IO sampling.
Why? What's wrong with inducing the function? (Genuinely curious.)
Re: Self Healing Code with clojure.spec
#18Re: Self Healing Code with clojure.spec
#19The article clearly explains how self-healing code works. However, what I don't understand is why this is a good idea in the first place. If you can't correctly write a function that meets a given specification, what makes you think that some random recombination of code you've previously written will meet the specification?
Re: Self Healing Code with clojure.spec
#20The article clearly explains how self-healing code works. However, what I don't understand is why this is a good idea in the first place. If you can't correctly write a function that meets a given specification, what makes you think that some random recombination of code you've previously written will meet the specification?
Machine learning algorithms do exactly that--they "write" a function that humans couldn't write by hand. What makes you think we couldn't eventually do the same here?