用Prolog写程序,感觉舒坦。
Prolog的编程范式,抽象程度远高于中、低级别的C语言等。写程序的源代码长度,至少比C语言的节省50%。
而且,Prolog的语法简单,符号选择自然合理,养眼度远高于其“近亲”Erlang。
Visual Prolog与其前身Turbo Prolog和PDC Prolog一脉相承,都是有严格类型限制的编译型软件。
与其他各种解释型Prolog相比,Visual Prolog运行速度快得多。
但是,Visual Prolog并非完美。它的缺点弱点,恰恰是它的Visual功能。
品种少、样貌丑的GUI控件,让人倒胃口,不愿用它做界面。
进入版本6、7之后,Visual Prolog引入了类class,彻底成了面向对象。
各种语法规矩铺天盖地涌来,编程模式太过复杂,我不喜欢。
所以,我只用版本5,并且,坚持不用它的GUI。
要想扬长避短,发挥VisualProlog编译器和推理引擎等工具的优秀,避开其GUI工具的短板,一个不错的选择,是用它做CGI程序,把GUI交给浏览器处理。
Prolog的实际应用,主要集中在开发专家系统。Visual Prolog提供了一个范例,使用WebCGI技术的"动物分类识别专家系统" —— GENI。
首先,安装运行GENI,了解它的基本情况。
1、安装配置服务器Apache
GENI是CGI程序,运行依赖HTTP服务器。我用的是Apache 2.2。为GENI配置虚拟主机,方法如下:
打开文件D:\Apache2.2\conf\httpd.conf
找到语句行 #Include conf/extra/httpd-vhosts.conf,删除行首的#,保存文件
打开文件D:\Apache2.2\conf\extra\httpd-vhosts.conf,做出以下设置:
NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot "D:/Apache2.2/htdocs/GENI" ServerName localhost ServerAlias localhost <Directory "D:/Apache2.2/htdocs/GENI"> Options FollowSymLinks +ExecCGI Order deny,allow Allow from all </Directory> </VirtualHost>
在终端控制台检查虚拟机配置是否正确:
D:\Apache2.2\bin > httpd -S
会显示一些配置信息,结论应该是 OK
2、安装运行专家系统GENI
所谓安装,其实是简单的复制
把目录D:\VIP52\WWW\INETPUB\GENI,完整复制到D:\Apache2.2\htdocs
启动Apache服务器httpd.exe
在浏览器中打开地址 http://localhost/default.htm
一个图文并茂的网页,GENI登场亮相。