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 中的类型信息 的相关文章

  • scala.collection.Seq 不适用于 Java

    Using 阿帕奇火花2 0 1 Java 7 在 Apache Spark Java API 文档中 DataSet 类出现了一个example http spark apache org docs latest api java org
  • ProjectCracker 与 .netstandard 2.0 项目

    我的团队最近从使用 net 框架转向使用 net 标准 2 0 作为我们的 F 库 我们有一些在项目上运行的内部脚本来自动生成 Markdown 文档 这些脚本使用 F 编译器服务 SDK 来分析代码并检索类型元数据 文档注释等 我们正在使
  • 如何将 Java 字节数组转换为 Scala 字节数组?

    我是 Scala 新手 目前正在从事一个涉及 Java 和 Scala 模块的项目 现在我想使用 byte 类型的参数从 Java 调用 Scala 方法 Scala 方法的签名为 def foo data Array Byte Java
  • JVM 是否会内联对象的实例变量和方法?

    假设我有一个非常紧密的内部循环 每次迭代都会访问和改变一个簿记对象 该对象存储有关算法的一些简单数据 并具有用于操作它的简单逻辑 簿记对象是私有的和最终的 并且它的所有方法都是私有的 最终的和 inline 下面是一个示例 Scala 语法
  • 通用高阶函数

    当我将泛型函数作为本地值传递时 但在作为参数传递时却不能使用具有不同类型参数的泛型函数时 是否有原因 例如 let f id let g x y f x f y g 1 2 工作正常 但如果我尝试将函数作为参数传递 let g f x y
  • 如何使用 Apache Livy 设置 Spark 配置属性?

    我不知道在向 Apache Livy 提交 Spark 作业时如何以编程方式传递 SparkSession 参数 这是测试 Spark 作业 class Test extends Job Int override def call jc J
  • 重写继承的构造函数字段时的差异?

    考虑这个简单的 Scala 类 class A val d Int Scala 之间是否存在差异 无论是行为还是生成的字节码 class B d Int extends A d and class B override val d Int
  • F# 中类型约束的顺序

    这适用于 F 4 0 type Something lt a b when b gt seq lt b gt gt 这不会 type Something lt b when b gt seq lt b gt a gt 类型名称中出现意外的符
  • 模式匹配中使用的抽象类型的类型不匹配

    此代码编译时出现错误 def f1 T e T T e match case i Int gt i case b Boolean gt b type mismatch found i type with underlying type In
  • 我们可以在比赛中重用后卫内部的中间变量吗?

    说我有方法foo as def foo i Int Option Int some code 现在我想在一个Seq of Int如下 Seq 1 2 map case int gt foo int collect case Some int
  • 对于值类型,asInstanceOf[X] 和 toX 之间有什么区别吗?

    我使用 IntelliJ 将 Java 代码转换为 Scala 代码的功能 通常效果很好 看来 IntelliJ 用调用替换了所有强制转换asInstanceOf 是否有任何有效的用法asInstanceOf Int asInstanceO
  • 将元组划分为多个元组的类型安全方法

    我们有一个特征 除其他外 还包含execute T lt Record Seq Session gt T Seq T 方法 其中Record是我们从数据库中检索的所有特征的超级特征 trait DbTrait val threadCount
  • 演员邮箱溢出。斯卡拉

    我目前正在与 scala 的两位演员合作 一 producer 产生一些数据并将其发送到parcer 生产者发送一个HashMap String HashMap Object List Int 通过消息 以及this标记发件人 parcer
  • f# 运行总计序列

    好吧 这看起来应该很容易 但我就是不明白 如果我有一个数字序列 如何生成由运行总计组成的新序列 例如 对于序列 1 2 3 4 我想将其映射到 1 3 6 10 以适当的功能方式 Use List scan https msdn micro
  • Scala SBT 和 JNI 库

    我正在编写一个简单的应用程序Scala通过以下方式使用 leveldb 数据库leveldbjni图书馆 我的build sbt文件看起来像这样 name Whatever version 1 0 scalaVersion 2 10 2 l
  • 如何使用 Scala 在 Spark 中漂亮地打印 JSON 数据帧?

    我有一个数据帧 我想将其作为有效的 json 写入 json 文件 我当前的代码如下所示 val df DataFrame myFun df toJSON saveAsTextFile myFile json 输出的格式为 如何将文件内容组
  • 选项包装值是一个好的模式吗?

    我最近写了以下 Scala 代码 val f File pretend this file came from somewhere val foo toFoo io Source fromFile f mkString 我真的不喜欢这种方式
  • Twitter Future 与 Scala Future 相比有何优势?

    我知道 Scala Future 变得更好的很多原因 有什么理由改用 Twitter Future 吗 除了 Finagle 使用它这一事实之外 免责声明 我在 Twitter 负责 Future 的实施 一点背景知识 在 Scala 有一
  • 什么是 Java 8“视图”?

    我正在观看 Paul Philips 的演讲 http www youtube com watch v TS1lpKBMkgg http www youtube com watch v TS1lpKBMkgg 在 12 48 比较 Scal
  • F# 类型提供程序与 Lisp 宏

    我一直在阅读有关 F 3 0 类型提供程序的内容 例如here http msdn microsoft com en us library hh156509 aspx 并且它们似乎基于一种编译时代码生成 在这方面我想知道它们与 Lisp 宏

随机推荐

  • 关于使用 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