[Jprogramming] Lists of integers remember their parentage

Ian Clark earthspotty at gmail.com
Fri Jan 12 05:06:59 UTC 2018


For years I've laboured under the delusion that nouns (i.0) and (0$0) are
identical in all respects, and will pass any tests designed to discriminate
between them.

However 5!:5 can tell the difference:

   5!:5 <'z' [z=: i.0

i.0

   5!:5 <'z' [z=: 0$0

0$0


Nor, it seems, is there any fooling it:

   5!:5 <'z' [z=: 5}.5{.i.0

i.0

   5!:5 <'z' [z=: 6}.5{.i.0

i.0

   5!:5 <'z' [z=: 5}.5{.0$0

0$0

   5!:5 <'z' [z=: 6}.5{.0$0

0$0


How does 5!:5 know? Is this Just One of Those Things? Or is there some
deliberate logic behind this subtle difference between (0$0) and (i.0)?
Does this difference emerge in other ways – ones which might impact
practical tasks?


More information about the Programming mailing list