Lisp-1和Lisp-2

Lisp-1

Lisp-1所指的模型是,變量和函數的命名空間是同一個,沒有區分。Scheme和Clojure是採用這種命名空間,絕大部分當現代的計算機語言也是使用該方案,包括C語言。函數

#include<stdio.h>
#include<string.h>
int a = 1;
int a()
{
    return 2;
}

int main()
{
    int *p = &a;
    return 0;
}

這段代碼是沒法經過編譯的。spa


Lisp-2

Lisp-2使用的是,變量和函數命名空間分離的方式,區別對待函數和變量名字。CommonLisp就是採用這種命名空間方案。
code

相關文章
相關標籤/搜索