Lisp/Scheme中的cons与点积是否存在相似性或理论关联?
Lisp/Scheme中
cons的点表示与数学点积的关系 这完全是巧合,两者没有任何理论关联,只是符号外观偶然相似而已,具体区别如下:
Lisp里的点是cons cell的分隔符
cons是用来构造配对单元(cons cell)的基本操作,(cons 1 2)生成的(1 . 2)是该单元的标准打印形式。这里的点仅仅是语法上的分隔标记,用来明确区分cons cell的两个组成部分:car(第一个元素,这里是1)和cdr(第二个元素,这里是2)。当cdr本身是一个列表时,Lisp会省略点,用更直观的列表形式展示,比如(cons 1 (cons 2 '()))会被打印成(1 2),只有当cdr不是列表时,点才会被显式输出。数学点积的点是运算符号
数学中的点积(dot product)是向量之间的一种运算,点是专门的运算符,用来表示将两个向量对应元素相乘后求和的操作,比如二维向量(a1, a2)和(b1, b2)的点积为a1·b1 + a2·b2,其功能和含义与Lisp里的分隔点完全无关。
内容的提问来源于stack exchange,提问作者147pm
相关产品推荐
相关产品推荐

