Common Lisp 和 Cocoa 结合起来编写 APP 的例子--代码中设置加载路径

Common Lisp 和 Cocoa 结合起来编写 APP 的例子--代码中设置加载路径,第1张

概述Common Lisp 和 Cocoa 结合起来编写 APP 的例子--代码中设置加载路径 话说最近越来越觉得 Objective-C 的代码太繁琐了, 但是在 OSX 下写程序又离不开苹果的框架,于是就希望能把苹果 Cocoa 提供的界面组件和其他更简单的编程语言结合起来使用(比如 Common Lisp), 查了查, 发现可以搞,苹果提供了 bridge , Common Lisp 提供了 F Common lisp 和 Cocoa 结合起来编写 APP 的例子--代码中设置加载路径

话说最近越来越觉得 Objective-C 的代码太繁琐了,但是在 OSX 下写程序又离不开苹果的框架,于是就希望能把苹果 Cocoa 提供的界面组件和其他更简单的编程语言结合起来使用(比如 Common lisp),查了查,发现可以搞,苹果提供了 brIDge,Common lisp 提供了 FFI,.

翻了翻文档,在 Clozure CL 中找到一篇比较简单的,就是一个汇率转换器. 具体就是:
1、先用XCode 的 Interface Builder 完成界面组件的设置,输出一个名为 correncyconverter.nib 的文件;
2、再用 Common lisp 创建一个名为 currency-converter.lisp 的源文件,在这个lisp文件里写代码 *** 作这些界面组件;
3、最后在 ccl 环境里把这两个文件编译成一个独立的 APP。

一切都很完美,唯一的缺憾就是要把 lisp 的 image 包含进去,使得最终的 app 文件体积稍微偏大--大概50M.

具体的教程在 Clozure CL 的目录下 "/ccl-1.8-darwinx86/examples/cocoa/currency-converter/howto.HTML",上述两个文件也可以在这个目录下找到。

编译过程如下,在 ccl 中依次输入下面的命令

# 把 currency-converter 设置为当前工作路径    (setf (current-directory) "/Users/mikel/Valise/clozure/openmcl/example-code/currency-converter/")# 加载 currency-converter.lisp(load "currency-converter")# 加载 BUILD-APPliCATION(require "build-application")# 执行BUILD-APPliCATION (ccl::build-application :name "CurrencyConverter"                        :main-nib-name "CurrencyConverter"                        :nibfiles   '(#P"/ccl-1.8-darwinx86/examples/cocoa/currency-converter/CurrencyConverter.nib"))

最后会在目录 “/ccl-1.8-darwinx86/examples/cocoa/currency-converter/” 下生成一个 APP,这个 APP 可以独立运行,如下图所示:

 

总结

以上是内存溢出为你收集整理的Common Lisp 和 Cocoa 结合起来编写 APP 的例子--代码中设置加载路径全部内容,希望文章能够帮你解决Common Lisp 和 Cocoa 结合起来编写 APP 的例子--代码中设置加载路径所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1053700.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-25
下一篇2022-05-25

发表评论

登录后才能评论

评论列表(0条)

    保存