问题标签 [mit-scheme]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scheme - 访问 MIT/GNU Scheme 的 REPL 返回值
是否有一个符号用于引用 MIT/GNU 方案 repl 中最后评估的表达式的返回值?
例如:
Python 使用_
哈斯克尔使用it
lisp - 理解具有本地状态的对象——Scheme
我正在为我的计划决赛而学习,与当地国家的对象一直是一个艰难的主题。
这是我期末考试中的一个问题,我需要帮助。
为什么a
第二次调用时返回1?我正在查看代码,n
我们给它的总是 3。那么它不是总是这样else
吗?
scheme - 代码在 stk-simply 中有效,但在 mit-scheme 中无效
我一直在阅读Berkeley Opencourseware的CS61A(2011 年春季)和OCW的MIT 6.001课程。一种使用STk(称为 as ),另一种用作讲座的编程语言。stk-simply
mit-scheme
我刚刚使用Heron 的方法编写了一个简单的平方根程序。该文件保存为 sqrt.scm
这在 STk 中运行良好。
但不在计划中。
我查了手册,但找不到原因。谁能让我知道这是为什么?还是我忽略的代码中有错误?我是方案和 STk 的初学者。
lisp - SICP 练习 2.29 混淆
当我输入子问题 b 的原始解决方案时。SICP 中的练习 2.29:
并用以下数据对其进行了测试:
解释器 (MIT/GNU Scheme) 报告错误:“作为第一个参数传递给 cdr 的对象 3 不是正确的类型”。但是当我消除了表达
使用以下代码:
该程序运行良好并打印了结果
我很困惑。任何人都可以对这个问题进行试验并帮助我吗?
scheme - Scheme: cannot use #t in an if statement
Apologies if the question title is a bit confusing. Maybe after you are through reading it, you can suggest me a better title.
As a part of a homework assignment for an online course, I wrote an iterative procedure in mit-scheme
to display number from 1 to a given number.
The code below works fine:
The output:
Personally I do not like using cond
for 2 branches only and I tried to use if
for this.
The output:
Why is this? Shouldn't #t be evaluated the same way it was used in cond
? Would really appreciate an explanation as I am still new to Scheme.
lisp - 为什么我收到“atom”的未绑定错误?
我正在尝试通过“The Little Lisper”并且在第一章中已经遇到了障碍。我对 Emacs 比较陌生(这激发了我对学习 Lisp 和 clojure 的兴趣)。我下载了 Mit-scheme 应用程序,并在 Edwin 上进行练习。
我正在努力:
其中 a 是一个原子,l 是一个已经定义的列表。我收到以下错误:
为什么?我使用“null”没有问题?功能。我想“原子?” 是一个内部函数,检查返回的值是否是原子。
任何解释将不胜感激。我还没有设置我的emacs来运行scheme,所有lisp方言之间的细微差别正在考验我的耐心。
functional-programming - 方案参数不适用
我开始学习 Scheme,我正在尝试实现我自己的 max 函数,它只给出两个参数的最大值。
我写了这样的函数:
(define (myMax x y) (cond ((> x y) (x)) ((< x y) (y))))
但是每次我尝试调用它(myMax 100 40)
(示例)时,我都会收到一条错误消息:
The object 100 is not applicable.
搜索 GNU 的 MIT-Scheme 的文档,他们说:
This type indicates an error in which a program attempted to apply an object that is not a procedure. The object being applied is saved in the datum field, and the arguments being passed to the object are saved as a list in the operands field.
但这应该是什么意思?
奇怪的是,我实现了一个非常简单的函数,将两个数字相加,它工作得很好,一个绝对值函数也工作得很好;可能是条件搞砸了?
谢谢
lisp - Scheme,N-queens 优化策略 SICP 第 2 章
SICP 包含 n-queens 解决方案的部分完整示例,通过遍历最后一行中每个可能的皇后位置的树,在下一行中生成更多可能的位置以组合迄今为止的结果,过滤可能性以仅保留那些最新的女王是安全的,并且递归地重复。
这种策略在大约 n=11 后以最大递归误差崩溃。
我已经实现了一种替代策略,该策略从第一列进行更智能的树遍历,从未使用的行列表中生成可能的位置,将每个位置列表连接到尚未使用的行的更新列表中。过滤那些被认为是安全的对,并在这些对上递归映射以用于下一列。这并没有爆炸(到目前为止),但 n=12 需要一分钟, n=13 需要大约 10 分钟才能解决。
不是真的在寻找代码,而是对一个或两个策略的简单解释,它不那么天真,并且与功能性方法相得益彰。
mit-scheme - 如何为 mit-scheme 配置 SublimeREPL?
我已经安装了 SublimeREPL,现在我正在尝试自定义解释器。如何将 MIT Scheme 添加到 Tools->SublimeREPL 菜单?我是 Sublime Text 2 的新手。