[Jprogramming] cap
Raul Miller
rauldmiller at gmail.com
Mon Jul 23 21:25:16 UTC 2012
On Mon, Jul 23, 2012 at 4:57 PM, Dan Bron <j at bron.us> wrote:
> Raul wrote:
>> It's defined as having an empty domain --
>> why not rely on the definition being
>> accurate?
>
> Cap's raison d'etre is grammatical, not semantic. That it is a verb, and
> that its domain is defined to be empty, is incidental. I prefer for my code
> to recognize this, and not hinge on incidentals, or encourage others to do
> so.
This kind of reasoning -- that a language primitive should not be
treated as having utility explicitly stated in the documentation of
that primitive, and obviously present in the implementations -- does
not make sense to me.
>> I think of a raised error as a "violation of type" issue.
>
> I think we can agree that one of the guiding principles in the design of J
> is "graceful degradation"; witness, e.g., %. which has rank 2 but works "as
> expected" on vector and scalar arguments. There are innumerable other
> examples. I prefer to maintain this principle as far as I can, in my own J
> code. Of course, there always comes a tipping point, but one hopes to defer
> that as long as possible (or reasonable).
But those are not cases where either the implementation or the
dictionary state that there should be an error. So I am not sure how
this observation is relevant in this context.
(Unless, for example, you are considering errors like length error.
But I think we can agree that length error from %. constitutes an
error in the code which provides the data?)
Am I missing something here?
Thanks,
--
Raul
More information about the Programming
mailing list