问题标签 [sml]
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.
list - 检查 sml 中字符列表列表的内容
我的问题就像这里的问题一样。
我正在处理一个 char 列表列表,我需要检查 1-9 在每个列表中使用一次,但在列表中的每个位置也使用一次。
我的代码如下所示:
但这仅检查 1-9 是否是列表的成员,而不是它们是否位于不同列表中的相同位置。
我有使用这个功能的想法:
(函数 poslist 应该返回列表 xs 的位置 n 中的任何内容,因此我可以隔离 char 列表列表中的各个列表),但是由于 poslist 返回一个 char 列表 rscheck 不能使用它,因为它需要一个字符列表列表。
1) 我可以改进 poslist 吗?
2) 如何修复 rscheck?
编辑
filter - 标准 ML(使用 MoscowML) 这个函数有什么问题?(筛选)
这是家庭作业的一部分,所以我的目标是了解为什么这是错误的。正如我之前提到的,我使用的是莫斯科 ML。
我得到的错误是:
我一直在阅读文档,但确实没有帮助。我真正不明白的是'b list 的来源。在我们的任务中,我们必须使用带有尾递归的累加器。我相信我的错误在于过滤器如何调用函数 f。Filter 将谓词作为参数, f 应采用列表和累加器,后者最初是空列表。
我试过像这样调用 f:f L [],但在其他示例中,我们实际上不必用它的参数调用 f,它以某种方式自动传递。
无论如何,任何帮助理解我的错误在哪里以及如何解决问题的指导将不胜感激。
-艾蒂
(如果有人可以给我任何关于解码类型表达式错误的提示,这也可能非常有益。)
list - 从 SML 中的列表中提取元素
我试图从列表中提取给定的元素,但我得到一个匹配异常?
目标是让我的函数表现得像:
我正在尝试这样做:
但正如所说,我得到一个
有任何想法吗?也许我可以使用更多的 List 函数?我已经了解了 curry 函数,它应该将一个函数变成一个高阶函数,但我真的不知道它是如何工作的?
list - 从真实列表中保存索引
我正在尝试声明一个函数sort : real list -> int list * real list
,该函数使用 mergesort 对列表进行排序,并返回一个 int 列表,其中包含预排序的各个数字的原始位置。
也许这个例子会更容易理解:
现在列表的排序非常容易,但我很难弄清楚如何让它记住原始位置,然后用它制作一个 int 列表。
帮助?
types - Standard ML binary tree type
I'm studying ML in class and I've run into a homework problem I am stuck on. I've spent all day yesterday searching but made little progress and we did not talk about this in class, so I am hoping you guys can help me.
We are given:
Part 1. We are told we need to create another datatype named whichTree
for a binary tree containing the values of type which
where data is only at the leaves of the tree.
Part 2. We need to create a whichSearch
function having type whichTree -> int -> bool
returning true or false based on whether the int is in the tree.
This is what I have so far:
The problem I am now facing is this:
- My
whichTree
does not contain the typewhich
. I am not sure how I can fix that. - I should have my
whichSearch
function of typewhichTree -> int -> bool
but it isint * whichTree -> bool
and am working on trying to figure out how to fix things. I am not sure how I would go about fixing this as I have to specify a value fori
inwhichSearch
to search for. I'm searching on this but any tips would be great.
Can anyone help? If so thank you! And thank you to the guys who already responded.
smlnj - 标准 ML 排列
我正在研究列表中所有值的排列的函数。
这是我到目前为止所拥有的:
输出:
输出应该类似于 [[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]。如您所见,我在这里遗漏了一些东西。我相信问题是我的 3 没有被传递给旋转,因为旋转 3 [1,2] 是我的代码中缺少的内容,并且由于某种原因这里有两个 2 元素列表。
如何更正我的 perm 函数以正确显示输出?任何帮助,无论大小,都会对我有很大帮助。
smlnj - 标准 ML 二叉树
我仍然有这个问题,所以我可以寻求更多帮助。
我们得到:
第 1 部分。我们被告知需要为包含“which”类型值的二叉树创建另一个名为 whichTree 的数据类型,其中数据仅位于树的叶子处。
我认为这将是正确的答案:
事实证明它不是我跑步时的样子:
我得到一个错误。
我能够弄清楚我可以做这样的事情:
或者
但这些对我来说似乎都不正确,因为在我的第一种情况下,我的数据类型名称中有一个 'a,而在我的另一种情况下,我说的是 int 的叶子,当我应该能够使用 which 来指定 string 或 int 时。
谁能告诉我正确答案是什么或为我提供一些帮助?
smlnj - SML/ML Int 到字符串的转换
我有这个代码:
当我运行我的函数时,我得到输出:“32123)231)12)))”。
答案应该是“((32((123)(231)12)))”。
我已经尝试修改我的函数以添加 ( 在我能想到的每个地方,但我无法弄清楚我应该在哪里添加 "("。我在哪里搞砸了?
编辑:我相信我需要在某处使用 map 或 List.filter ,但不确定在哪里。
syntax - SML 语法错误帮助
在以下代码部分中,我收到错误,尽管我使用了所有资源来研究它们,但我不确定为什么会得到它们。这是 SMLNJ 编码。
给
hw4.sml:339.5-433.6 错误:非构造函数应用于模式中的参数:DeallocComm hw4.sml:427.26-427.29 错误:未绑定的变量或构造函数:var
hw4.sml:430.31-430.34 错误:未绑定的变量或构造函数:exp
和
给
hw4.sml:612.14 错误:语法错误:插入 EQUALOP
hw4.sml:615.8-615.11 错误:语法错误:将 VAL 替换为 END
任何有关这些的帮助将不胜感激。
sml - 使用 SML 模式时如何在 Emacs 中清除 SML 缓冲区。
我正在使用带有 SML 模式的 Emacs。有时我需要清理 SML 缓冲区。我怎样才能做到这一点。