Scala REPL 中的类型信息

2024-04-22

如果我使用 F# 解释器,我可以定义一个简单的函数,如下所示:

> // Function to check if x is an integer multiple of y
> let multipleOf x y = (x % y = 0);;

val multipleOf : x:int -> y:int -> bool

如果我知道 F# 解释器会话中存在某个函数,但不确定其精确类型,我可以通过输入函数名称来要求解释器提供其类型:

> // I can't remember the type of the function multipleOf!
> multipleOf;;

val it : (int -> int -> bool) = <fun:it@12-1>

显然,这告诉我该函数multipleOf属于类型int->int->bool。我发现这个工具非常有用,可以在使用 F# 解释器时唤起我的记忆。

然而,我似乎在 Scala 的 REPL 中找不到类似的功能。当然,我可以很容易地在 Scala 中定义一个等效函数:

def multipleOf(x: Int, y: Int) = x % y == 0

但是,如果我在 Scala REPL 会话中进行了 10 分钟并且记不起函数的类型,请输入multipleOf没有给出有关类型的信息(事实上,它给出了一个错误)。相似地,:type multipleOf告诉我没有什么有用的。


scala> val f = (i: Int, j: Int) => i % j == 0
f: (Int, Int) => Boolean = <function2>

scala> f
res2: (Int, Int) => Boolean = <function2>

scala> def multipleOf(x: Int, y: Int) = x % y == 0
multipleOf: (x: Int, y: Int)Boolean

scala> :type multipleOf(_, _)
(Int, Int) => Boolean
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Scala REPL 中的类型信息 的相关文章

随机推荐

  • 关于使用 playframework 实现购物车的建议

    我正在学习使用playframework通过编写代码来实现webstore用于销售物品 我已经实施了Admin区域使用crud and secure模块 现在 我想创建一个shopping cart用户可以向其中添加商品并继续结账 我对电子
  • 如何更改 codeigniter 中显示的错误

    The URI you submitted has disallowed characters 我该如何拦截这个错误 他们是一个callback 功能 当我尝试在 URL 中使用 时 会发生此错误 例如 我输入 1 1 我得到这个错误 我想
  • ios5 - 带有故事板的模态视图控制器的大小

    有没有什么方法可以调整使用故事板segue以模态方式呈现的视图控制器的大小 如何通过翻转过渡从该模态视图控制器中呈现另一个视图控制器 如果我将其定义为 Style Modal Presentation Default Transition
  • hibernate是否支持count(*) over()

    我试图避免必须为计数创建一个单独的查询 为实际查询创建一个单独的查询 我发现 SessionImpl createQuery 需要相当多的时间来执行复杂的查询 通过将 count 和主查询结合起来 我可以消除一个 createQuery 调
  • 我们如何修复透明/半透明可组合项上的材质阴影故障?

    如果您还不知道 Android 的材质阴影存在一个缺陷 即材质设计及其表面 照明和高度概念带来的阴影 另外 如果您不知道 Compose 使用许多与View框架 包括那些负责所述阴影的框架 因此它具有与View是的 至少现在是这样 Card
  • 将数据传递到startup.cs

    如何将数据传递到startup cs 这是用于集成测试使用WebHostBuilder and TestServer 我需要根据测试夹具传递不同的数据 因此 例如 不想从配置文件中提取它 数据将提供给startup cs中注册的中间件 文档
  • 使用 Python Pandas 使用每日数据计算月平均值

    我有一个包含四列的文本文件 年 月 日和雪深 这是 1979 年至 2009 年 30 年期间的每日数据 我想使用 pandas 计算 360 个 30 年 X 12 个月 个人月平均值 即隔离 1979 年 1 月 1979 年 2 月
  • 页面速度洞察删除 Google Recaptcha 未使用的 JavaScript

    我有一个网站在 Google Page Speed Insights 上得分很高 但它显示了一个性能问题 并显示此文件的 删除未使用的 JavaScript https www gstatic com recaptcha releases
  • 填充网格的最小矩形区域数

    假设我们有一个网格 并且希望使用尽可能少的颜色 每个区域一种颜色 在其上绘制矩形区域 有一些单元格已经被涂成黑色并且无法被涂掉 有没有多项式算法可以解决这个问题 经过测试 我发现这种情况的解决方案是9 因为我们需要9种不同的颜色来绘制填充整
  • 保持 GridView 中的图像处于选中状态

    我做了什么 大家好 我有一个 GrindView 我填充了我的数据库 现在图像显示在那里并且可以滚动 但是当我点击它时 它们不会保持选中状态 为了查看选择了哪张图片 我构建了一条 Toastmessage 它显示了我使用 onIemClic
  • 如何计算两个整数的相似度?

    其实很难描述 我想实现一种算法 该算法可以逐个比较两个给定整数 数字 具有相同 长度 的相同位置的数字 当我在基于 10 的系统中进行计算时 它是相同的 十的幂 它应该返回平等等级 如下所示 4491 和 1020 0 4491 和 412
  • 需要 div 来填充两个 div 之间的间隙

    给定以下 HTML div div header div div content div div footer div div 以及以下 CSS wrapper min height 100 position relative margin
  • 对唯一顺序索引的多索引 pandas 数据帧进行切片和赋值

    我想选择并更改数据框单元格的值 该数据帧使用了 2 个索引 datetime 和 idx 两者都包含唯一且连续的标签 datetime 索引具有日期时间类型的日期时间标签 idx 具有整数值标签 import numpy as np imp
  • ui-router deferIntercept 和状态参数

    我使用 ui router 的新 deferIntercept 来更新浏览器 url 而无需重新加载 我的控制器 rootScope on locationChangeSuccess function e newUrl oldUrl e p
  • Python AST 中的 ExtSlice 节点表示什么语法?

    我正在费力地浏览Pythonast模块并且无法弄清楚切片定义 slice Ellipsis Slice expr lower expr upper expr step ExtSlice slice dims Index expr value
  • Pandas 读取 Excel 并跳过带删除线的单元格

    我必须处理一些xlsx从外部来源收到 有没有更直接的方法来加载xlsx in pandas同时还用删除线跳过行 目前我必须做这样的事情 import pandas as pd openpyxl working file r somethin
  • 哪些分类器提供权重向量?

    存在哪些机器学习分类器可以在学习阶段后提供权重向量 我了解 SVM 逻辑回归 感知器和 LDA 还有更多吗 我的目标是使用这些权重向量绘制重要性图 其实任何线性分类器 https en wikipedia org title Linear
  • UITableView - 字母表

    这是我希望添加到带有字母表的 UITableView 中的改进 如果我的表中没有不以字母表字母开头的结果 我不想在 UITableView 中看到此 titleForHeaderInSection 我找不到这样做的方法 您可以查看我当前的实
  • 如何将 XML 转换为字符串而不使用 .NET 中的文件?

    假设我有两个字符串 一种是XML数据 另一个是XSL数据 如果您必须知道的话 xml 和 xsl 数据存储在数据库列中 如何在 C 中转换 XML 而不先将 xml 和 xsl 保存为文件 我也希望输出是一个字符串 来自转换的 HTML 看
  • Scala REPL 中的类型信息

    如果我使用 F 解释器 我可以定义一个简单的函数 如下所示 gt Function to check if x is an integer multiple of y gt let multipleOf x y x y 0 val mult