最新标注
热门标注
历史更新
站点地图
RSS
Home
CrazyCoder
»
原创
»
it评论
»
it业界
»
互联网
»
精品软件
开发语言
»
网络编程
编程综合
嵌入式开发
算法
英文资料
汇编语言
PowerBuilder
p2p技术
验证码识别
DotNet
Java教程
C语言教程
C 教程
Delphi教程
VB教程
QQ协议开发
项目管理
»
数据库
»
Web开发
»
Python
Css教程
XML教程
网页特效
PhotoShop教程
Illustrator教程
CorelDraw教程
Ruby教程
CorelDraw教程
网站安全
开发平台-工具
Web
PHP教程
Flash教程
Ajax教程
Javascript教程
Html教程
Dreamweaver
Asp教程
技术综合
»
软件测试
办公软件
QQ相关
Windows
网络技术
游戏开发
软件工程
软件教程
编程思想
游戏开发
外挂开发
OpenApi
AutoCad
广告设计
3D设计
平面设计相关
移动手机开发
服务器
»
Linux
Unix/FreeBsd
web服务器
服务器技术
安全
博文摘选
»
翻译
首页
»
博文摘选
» lisp函数,Common Lisp中使用字符串动态调用函数
Rss订阅
lisp函数,Common Lisp中使用字符串动态调用函数
on 2011-4-14
in
博文摘选
|
0 Comment
应用场景:一个统计查询的后端程序,根据查询名称字符串分别调用相应的处理函数。
一般的处理方法,可以用一个全局的注册表,将名称字符串与函数名对应起来。但是,lisp程序员是很懒惰的,既然lisp环境本身已经提供了名称注册的机制,为什么还要自己写一套呢?事实上,Lisp环境本身的核心就在于 namespace 。
简单的说解决办法如下:
(defun q-hello () (format t "q-hello ok")) (defun q-world () (format t "q-world ok")) (defun call-by-name (name) (funcall (nth-value 0 (read-from-string name))))
执行如下:
CL-User(34): (call-by-name "q-hello") q-hello ok NIL CL-User(34): (CALL-BY-NAME "Q-WORLD") q-world ok NIL
这是第一步的实现,但是没有进行异常处理,例如调用一个不存在的函数,系统会报异常。
待续。。
Tags:
lisp函数
延伸阅读
最新评论
发表评论
昵称
评论
验证码
点击图片更换
赞助商广告
随机更新
vb.net:关于ASP.NET; VBS, VB.NET, JS, JS.NET, C# 的体会
asm磁盘组:在ASM磁盘组中删除一个磁盘
plsql:借助两个开发包在PL/SQL中实现多进程通信
汶川大地震损失:美国支付系统出现严重BUG 引发巨大损失
Oracle的三种备份方式的恢复特性
触发器更新表:SQLServer 创建触发器,更新表
服务器安全加固:八大技巧加固网络应用安全
迅雷防火墙:防火墙设置错误引起迅雷无法搜索
浅析Oracle备份方式的差异性
d触发器真值表:触发器中的inserted表和deleted表介绍
sybase:Sybase程序设计中极易造成误解的内部规则
美炒作中国黑客真相:为搞网络建军树敌人
split函数:用Pipelined Table实现split函数的示例
java桌面:把一个java web应用包装成桌面应用的简单做法
卡巴斯基无法启动:卡巴斯基启动全球主动对抗敲诈病毒计划
中间件:中间件巨头整合为市场带来了什么
国际:不能成为优秀程序员不是Java的错
0day网马:遭遇最新Flash 0day网马
mysql数据库:MySQL数据库磁盘优化
wm6.1中文版:NetBeans6.1 中文版发布
如何配置虚拟主机:如何安全配置虚拟化
嵌入式系统概述:嵌入式系统安全之攻防策略概述与分析
《财富》:"后盖茨时代"微软将何去何从?
华为公司:因时而变 华为电信行业敏捷实践经验分享
Python 3.0 beta 1 变化大,更简洁、更统一
黑客基地:网易惊现违禁色情新闻 疑被黑客入侵篡改
淘宝网架构:解密淘宝网的开源架构
js瘦身有道--选好合适的减肥药
自我剖析:拒绝盲目迷信,深度剖析5款主流杀毒软件
风险评估体系:计算机风险评估体系思考
热门标注
浏览器特性
(1)
修辞方法
(1)
说明方法有哪些
(1)
接吻的方法
(1)
文竹的养殖方法
(1)
unipaas
(1)
团队管理心得
(1)
打造高效团队心得
(1)
团队培训心得体会
(1)
团队合作心得
(1)
团队培训心得
(1)
在线网页编辑器
(1)
在线公式编辑器
(1)
在线图片编辑器
(1)
张子阳博客园
(1)
博客园找找看
(1)
html网站模板
(1)
html模板下载
(1)
优秀简历模板
(1)
ipad的处理器
(1)
最近更新
浏览器特性,深入分析line-height 在浏览器中的特性以及最佳实践
Silverlight5.0正式发布附下载地址
ext插件,Ext.PagingToolbar设置每页条数插件
unipaas,uniPaas RIA 安装与使用方法
jquery,分享10篇优秀的 jQuery 幻灯片制作教程及应用案例
团队培训心得,如何构建团队(一些个人心得)
在线图片编辑器,在线编辑器
Android RadioGroup和RadioButton使用
android解析xml文件的方式(其二)
TCP/IP之二:ARP与RARP
Android RadioGroup和RadioButton的使用方法
博客园,在.Net中使用Oracle的表类型和对象类型 - 深蓝居 - 博客园
Function.prototype.call 内部实现探讨
wpf全视角分析,WPF 3D视角变换
开源webim,Lesktop开源WebIM 2.2.0.11——增加在线客服功能
tpanel,C++ Builder中在TPanel上画图
html模板,提供几个优秀的纯HTML模板
linux抓包,Linux下抓包工具tcpdump应用详解
博客园,关于ADO.NET连接池 - 深蓝居 - 博客园
编程人生,编程,我人生的起航路
最新标注
浏览器特性
(1)
修辞方法
(1)
说明方法有哪些
(1)
接吻的方法
(1)
文竹的养殖方法
(1)
unipaas
(1)
团队管理心得
(1)
打造高效团队心得
(1)
团队培训心得体会
(1)
团队合作心得
(1)
团队培训心得
(1)
在线网页编辑器
(1)
在线公式编辑器
(1)
在线图片编辑器
(1)
张子阳博客园
(1)
博客园找找看
(1)
html网站模板
(1)
html模板下载
(1)
优秀简历模板
(1)
ipad的处理器
(1)
最新评论