- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Emacs Lisp 中 (boundp 'symbol)
如果 symbol
绑定(bind)到某个值,则返回 t
,nil
否则。 Guile Scheme 中是否有等效的程序?
最佳答案
方案避免将实现泄漏到规范中,并提及“标识符”,而不是将内部符号绑定(bind)到值 - 请参阅 R7RS 的 §2.1。在方案中,“标识符”只是一个名称。
标识符名称被视为标识变量,除非它标识宏(语法)或位于需要将其视为标识符号的上下文中,例如通过引号。特别是,R7RS 的 §2.1 指出“当标识符作为文字或文字出现时(请参阅第 4.1.2 节),它被用来表示符号(请参阅第 6.5 节)”。你可以用符号测试一个标识符是否能识别一个符号?程序。
Guile 方案实际上通过驻留符号来实现标识符,您可以使用 Defined? 查询符号是否绑定(bind):
(defined? 'num)
=>#f
(define num 1)(defined? 'num)
=>#t
这是一个狡猾的实现问题,而不是可移植的方案。
编辑:注意定义了吗?仅适用于使用 Define 定义的顶级变量。它不适用于 let 和同源词。
关于guile - 检查符号是否绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44542348/
我想发现 guile 生态系统。我看了看怎么安装a library我没有找到包管理器,比如 python 的 pip . guile 有这种东西吗? 最佳答案 看起来像 guildhall是最接近 p
我是 configure.ac 的新手,我正在尝试创建一个简单的程序,它只会在用户调用时使用 GNU guile 库: configure --with-guile 所以程序应该是这样的: #incl
在 Emacs Lisp 中 (boundp 'symbol) 如果 symbol 绑定(bind)到某个值,则返回 t,nil否则。 Guile Scheme 中是否有等效的程序? 最佳答案 方案避
在 Emacs Lisp 中 (boundp 'symbol) 如果 symbol 绑定(bind)到某个值,则返回 t,nil否则。 Guile Scheme 中是否有等效的程序? 最佳答案 方案避
我编写了一个代码,它使用惰性求值来产生无限的数据结构,但是有一个错误。 这是代码: #!/usr/bin/guile \ -e main -s !# (define ints-f (lambd
我不熟悉 guile 和 scheme,我现在想做的是获取一个 scheme 文件 (file.scm) 并将其加载到一个变量中,这样我就可以解析它,我无法在任何地方找到如何执行此操作。 我现在有的是
我听说大多数 lisps 支持将运行程序的图像保存到文件中。 guile 支持这个吗? 最佳答案 我认为与其他语言的互操作是 Guile 不可或缺的一部分,因此解释器图像中有很多状态对 Guile 本
最近开始学习使用自动工具,并一直在尝试用它制作一个简单的 Guile 程序。 Following this tutorial我让程序成功编译,.go 文件放在 %site-ccache-dir 中,.
我正在尝试在我的 WSL Ubuntu 20.04 安装中安装 libgraph。我安装了所有必要的软件包。但是当我尝试配置 libgraph 时,它失败了: $ ./configure checki
我想在 Guile 中创建两个进程,并将其中一个的输出(stdout)作为输入(stdin)发送到另一个。 使用以下示例,如何做到这一点? echo "foo bar" | wc 输出: 1
我正在使用 Guile与 Geiser 一起使用在 Emacs 下学习如何在 Scheme 中编程。我发现每次我打错字或输入错误的代码时,Guile 都会进入调试器,这实际上是一个障碍。在 Emacs
我在 OS X 上的 Guile 1.8.8 解释器中练习Scheme。我注意到一些有趣的事情。 这是expt函数,它基本上是求幂expt(b,n) = b^n: (define (square x
我通常使用 MIT/GNU Scheme,但在 github ( guile-2d) 中发现了一些 Guile 代码。 (define main-menu (make-scene "Main
上下文: 我目前正在编写 generate-ninja-build.scm git commit cb7530e3ff10 中的脚本我的 GPLv3+ 项目 bismon (由 H2020 研究项目资
我为 Guile 开发了一个扩展模块,用 C 语言编写。这个扩展模块嵌入了一个 Python 解释器。 由于这个扩展模块调用了 Python 解释器,我需要验证它是否正确管理了 Python 对象占用
我正在尝试构建 Guile 2.2。 我已经将 libunistring 安装到 /path/to/libunistring。 当我运行时 ./configure --with-libunistrin
; Having this definition that creates identifier `self' (define-syntax alambda (lambda (stx) (
是否有类似 (declare (indent defun)) 的东西,以便用户定义宏的缩进像 defines 一样工作? 例如,如果我编写以下宏, (define-syntax my-when (
我试图让 guile-gnome 与安装在我机器上的 Guile 一起工作。我已经根据 the instructions here 下载并构建了 guile-gnome ,但无论我给它什么前缀,我似乎
我正在尝试写 let over lambda defmacro/g!在诡计中。我有这个: (use-modules (srfi srfi-1)) (define (flatten x) (le
我是一名优秀的程序员,十分优秀!