为什么Lisp语言如此先进
推荐于2016-10-18 · 知道合伙人软件行家
程序语言越低级,描写程序越复杂,指令越难懂,就越靠近机器;越高级,就越靠近人的表达与理解,与人类的自然语言更接近。
语言简洁、紧凑,使用方便、灵活。
运算符丰富。
数据类型丰富。
具有结构化的控制语句 。
语法限制不太严格,程序设计自由度大。
允许直接访问物理地址,能进行位操作。
目标代码质量高,程序执行效率高。
程序可移植性好(与汇编语言比)。
比如,在AutoCAD里面,使用VLAX程序,可以简单化的对曲线进行分析:
(if (null vlax-dump-object) (vl-load-com) );首先加载vlax函数
(setq &ob1 (vlax-ename->vla-object ent));把AutoCAD里面的图元变为object对象
(setq &sta (vlax-curve-getStartPoint &ob1));取得曲线的起点
(setq &end (vlax-curve-getEndPoint &ob1));取得曲线的端点
(setq &pt (vlax-curve-getPointAtDist &ob1 1));取得离起点距离为1毫米的坐标
从以上函数可以看出,对曲线都有用,程序把曲线看成点构成,比如直线长度1000,要取得一个直线上的坐标很容易就得到,圆,圆弧,多段线,椭圆,椭圆弧,样条曲线等曲线都可以计算,这样是不是很简单?
函数结构也容易理解。vlax-curve-getStartPoint与vlax-curve-getEndPoint就是起点与端点的区别Start与End,一看就明白,容易记住。
如果人工计算曲线上的一点坐标,就需要分析对象是直线,圆弧等等,很麻烦,使用lisp的话,计算由电脑来执行了,人只要掌握计算的方向就可以了。
【lisp的功能使人从大量的计算解脱出来,计算由电脑来承担,所以显的先进了。】