4 ms·
I really mean perimeters. An action perimeter returns a value. To perform its work, it needs parameters. That is: values. Some of these values can be written
by thomaskrauss 12y ago
I really mean perimeters.
An action perimeter returns a value. To perform its work, it needs parameters. That is: values.
Some of these values can be written by hand, others need to be computed. In that latter case, you ask for a computation by writing an action perimeter.
And there's no need for a special syntax to use the value that results in executing that perimeter. You just write it in the appropriate place, as a parameter.
So in practice, you can chain perimeters with one another. Until you have expressed all the computations you wanted the computer to do.
- nutate 12y agoAccording to google you just made that up? I only see action perimeter in reference to expanding the perimeter of action of the coast guard in Canada. So like... how is an "action perimeter" different than a function? In which case you get the more succinct two words "chainable functions." After looking at the French version I see that "action perimeter" is from the french perimeter d'action (accents removed) which translates better in english (once again according to the interwebs) as: sphere of operations. http://dictionary.reverso.net/french-english/p%C3%A9rim%C3%A8tre%20d%27action http://dictionary.reverso.net/french-english/p%C3%A9rim%C3%A... Once again, I'd go so far as saying the concept of functions works just as well here, but at least it gets over the near homonym of parameter/perimeter. The chaining of scoped actions is pretty vital to lisp, and I suppose functional programming in general.
- thomaskrauss 12y agoI haven't read the notion of action perimeter phrased anywhere else. I just came up with it some years ago when I was trying my colleagues to give Lisp a go. An action perimeter is different from a function because, for instance, you can write (if <test> <then-clause> <else-clause>). For a function, all its arguments are evaluated first and then it is applied. That's certainly not the case for if since the whole point of a condition is to refrain from evaluating some code unless a condition is met. Hence, in Lisp, the simple notation encompasses and is fully operative on every action, including the ones that do not behave like functions. While in many language chaining perimeters is only about function calls. And in addition it is rarely idiomatic to chain function calls in such language. Thank you for pointing out the similarity between parameter and perimeter which borders on confusion. Thanks to everyone who brought it up to! It's clear that's an issue I overlooked. The reason is I use the term argument in English and in French, never parameter itself. But that's probably because once I realized the notion of a perimeter is important in Lisp, I stopped using the word 'parameter'. Sorry for that! I'll try to find a better term.