首页 > 其他 > 详细

一个有意思的递归定义

时间:2015-10-05 11:41:44      阅读:197      评论:0      收藏:0      [点我收藏+]

最近在看一本《WEB全栈工程师的自我修养》一书,其中涉及到了npm这个词的意义,非常有意思。

一般人可能以为npm是Node Package Manager的缩写,但实际上不是这样的,npm不是Node Package Manager的首字母缩写,所以不能全大写。npm是“npm is not an acronym”(npm不是一个缩写)这个递归定义的简写。

是不是很绕?呵呵。

递归定义是指一种在定义中引用他自身的定义方法,在程序中引用自己称为递归,因为自身是递归的,所以无法精确地解释出他的真正全称。我们熟知的VISA其实就是一种递归定义,VISA的意义是VISA Internation Service Association,还有PNG,PNG is Not Gif。

再读一遍npm的递归定义“npm is not an acronym”,按理他的缩写应该是ninaa,但是这样就成了acronym(缩写)了,就是错误的,所以只能简称他为npm,我们不知道他是什么,但可以肯定的是,他不是一个缩写。

是不是有点崩溃?这还有一段:

npm可以大写么?
不可以,因为npm不是一个缩写
那npm是什么单词的缩写么?
是“npm不是一个缩写”的简写。

版权声明:本文为博主原创文章,未经博主允许不得转载。

一个有意思的递归定义

原文:http://blog.csdn.net/bisal/article/details/48912601

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!