问题标签 [mosml]
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.
sml - 了解用户定义的附加列表标准ml
我无法理解标准 ML 中列表的这种实现。这是它的定义方式:
附加列表是列表抽象数据类型的(简单)实现,它使构造成本低(O(1)),但破坏成本高(O(n))。'a alistNN 和 'a alist 类型定义如下:
'a alistNN 类型表示“非 nil”附加列表,而 'a alist 类型表示任意(nil 或非 nil)附加列表。
我对如何处理这些列表/制作这些列表感到困惑。例如,我必须编写一个定义为的函数:
在理解此列表定义时,我们将不胜感激。
functional-programming - 来自 SML 元组的“咖喱”
我正在尝试定义一个在 SML 中包含一个元组的函数包装器。
给我错误
应用于模式的非标识符。
我是 ML 新手,不知道为什么模式匹配fn
不起作用。
我怎样才能使这项工作?
sml - 在标准 ML 中包装数据类型
此问题是此处发布的问题的后续问题:
我遇到的问题是我似乎无法弄清楚如何正确地将附加节点包装在 NonNil 中。我的代码是:
我知道这段代码可能没有正确附加,我只是想弄清楚如何为这个函数获取正确的返回类型。包装附加节点的正确方法是什么?
sml - 使用 foldl/foldr 插入函数
我一直在研究一个单独的函数,该函数返回一个列表,该列表在列表 l 的每个 k 元素之后插入元素 x (从列表末尾开始计数)。例如,单独的 (1, 0, [1,2,3,4]) 应该返回 [1,0,2,0,3,0,4]。我完成了该功能并使其工作如下:
我现在试图在没有任何递归的情况下使用 foldl/foldr 来简化函数,但我似乎无法让它正常工作。关于如何解决这个问题的任何提示/建议?谢谢你!
sml - 如何创建一个由函数表示的空环境
我在网上遇到了这个我觉得很有趣的问题,它有一个不错的解释,但我对解决方案感到困惑。所以给定
创建一个类型的值
这将是我们的空环境。我认为这是以下内容
它可能会返回 Notfound 名称异常,但我可能做错了,因为我继续得到
抱歉,如果这在 sml 仍然很简单,有人可以解释我将如何获得解决方案吗?
谢谢
sml - 标准 ML 中命题逻辑公式的大小
我正在研究这个问题,其中命题逻辑公式表示为:
我正在尝试编写一个返回命题逻辑公式大小的函数。命题变量的大小为 1;逻辑否定的大小为 1 加上其子公式的大小;逻辑合取和析取的大小为 1 加上它们的子公式的大小。
我将如何尝试解决这个问题?
sml - 在标准 ML 中的列表上映射函数
基于这个定义:
附加列表是列表抽象数据类型的(简单)实现,它使构造成本低(O(1)),但破坏成本高(O(n))。和'a alistNN
类型'a alist
定义如下:
类型代表“'a alistNN
非零”附加列表,而'a alist
类型代表任意(零或非零)附加列表。
我要求将地图函数定义为:
这在附加列表上执行映射。
我将其定义如下:
我不断遇到冲突的类型,尤其是:
知道可能是什么原因造成的吗?
sml - 在函数表示的环境中查找值
当要在 bst env 中找到一个值时,我所要做的就是将我正在寻找的值与节点上的根值进行比较
但是在代表 env 的函数中,而不是带有节点和叶子的 bst 中,find 函数的类型是
和
我了解了该函数的一般概念,但我对如何遍历环境以查找名称感到困惑。Bst 有一个节点和一个树状结构。如果可能的话,有人可以给出解释吗?
编辑于
我的工作实现就是这样
functional-programming - 是否可以在标准 ML 中创建“通用”函数?
我想创建一个remove_duplicates
采用list
任何类型的函数(例如可以是 anint list
或 abool list
或 aint list list
或 a whatever list
)并返回相同的列表而没有重复,这在标准 ML 中是否可行?
sml - Sml 元组长度
我对是否有可能获取 sml 中的元组长度感兴趣?!查看示例
我想要它来解决问题有一个问题说要获取学生列表,其中包含每个学生信息的列表,但是学生信息在两种类型中有所不同,有些就像
有些就像
所以它想返回学生列表中每个列表的第一个元素,如下所示:
这里有更多信息 M Molbdnilo @molbdnilo