在命令行中执行 Mozart-Oz 代码
Executing Mozart-Oz code in command line
我正在尝试使用 Mozart Oz。
我从 source forge 下载执行二进制文件:http://sourceforge.net/projects/mozart-oz/。
启动 Mozart.app 时,emacs(Mac OS X 的 aquamacs)开始在其中进行编码。
例如,我可以在Tcl/Tk浏览器中输入{Browse 'Hello World'}
并执行Oz -> Feed Buffer
得到结果。
那么,我怎样才能像使用 Python 或 Ruby 一样在命令行中构建或执行 Oz 代码?
我在 bin 目录中找到了二进制文件。
/Applications/Mozart2.app/Contents/Resources/bin
├── oz
├── ozc
├── ozemulator
├── ozengine
└── ozwish
但是,当我使用 ozc -c hello.oz
执行代码时,出现 %** variable Browse not introduced
错误。可能出了什么问题?
你必须使用 Browser.browse
实际上,在 oz 中构建应用程序时,每个函数都必须 imported/created。当您导入浏览器时,您会得到一条记录,其中包含浏览器对象 class 导出的所有功能。 (参见 https://mozart.github.io/mozart-v1/doc-1.4.0/browser/node2.html)
因此,您的代码是
functor
import
Browser
define
{Browser.browse 'Hello World'}
end
我应该使用 {Application.exit 0} 退出应用程序,但它给了我一个奇怪的错误...
无论如何,我建议不要使用浏览器。即使在使用交互式解释器时它非常强大,它也很笨重且有问题。请改用 System.showInfo,如果你真的想要的话,可以构建你自己的传统知识 window。
functor
import
System
Application
define
{System.showInfo 'Hello World!'}
{Application.exit 0}
end
你用
编译它
$ ozc -c hello.oz
然后 运行 它与
$ ozengine hello.ozf
我正在尝试使用 Mozart Oz。 我从 source forge 下载执行二进制文件:http://sourceforge.net/projects/mozart-oz/。
启动 Mozart.app 时,emacs(Mac OS X 的 aquamacs)开始在其中进行编码。
例如,我可以在Tcl/Tk浏览器中输入{Browse 'Hello World'}
并执行Oz -> Feed Buffer
得到结果。
那么,我怎样才能像使用 Python 或 Ruby 一样在命令行中构建或执行 Oz 代码?
我在 bin 目录中找到了二进制文件。
/Applications/Mozart2.app/Contents/Resources/bin
├── oz
├── ozc
├── ozemulator
├── ozengine
└── ozwish
但是,当我使用 ozc -c hello.oz
执行代码时,出现 %** variable Browse not introduced
错误。可能出了什么问题?
你必须使用 Browser.browse
实际上,在 oz 中构建应用程序时,每个函数都必须 imported/created。当您导入浏览器时,您会得到一条记录,其中包含浏览器对象 class 导出的所有功能。 (参见 https://mozart.github.io/mozart-v1/doc-1.4.0/browser/node2.html)
因此,您的代码是
functor
import
Browser
define
{Browser.browse 'Hello World'}
end
我应该使用 {Application.exit 0} 退出应用程序,但它给了我一个奇怪的错误... 无论如何,我建议不要使用浏览器。即使在使用交互式解释器时它非常强大,它也很笨重且有问题。请改用 System.showInfo,如果你真的想要的话,可以构建你自己的传统知识 window。
functor
import
System
Application
define
{System.showInfo 'Hello World!'}
{Application.exit 0}
end
你用
编译它$ ozc -c hello.oz
然后 运行 它与
$ ozengine hello.ozf