小编use*_*215的帖子

什么是Scala中的"提升"?

有时,当我阅读Scala生态系统中的文章时,我会读到"提升"/"解除"一词.不幸的是,没有解释这究竟意味着什么.我做了一些研究,似乎提升与功能价值或类似的东西有关,但我无法找到一个文本,以初学者友好的方式解释实际提升的内容.

通过Lift框架存在额外的混乱,其名称已经提升,但它无助于回答这个问题.

什么是Scala中的"提升"?

functional-programming scala function lifting

245
推荐指数
4
解决办法
3万
查看次数

更新后未解决的依赖关系SBT 0.13.0

请查看最新评论.

将SBT更新为0.13.0:

我有几个使用scala 2.10.2编写的项目,并使用sbt 0.12.4构建.由于我的操作系统是Ubuntu,我使用SBT.deb包来安装sbt 0.12.4.一切都很好.我用sbt建立了我的项目.

昨天我想将sbt更新到版本0.13.0.我下载并安装了新的.deb软件包.项目配置尚未更改.

失败:

在更新后运行SBT时,我遇到此故障:


$ sbt
Loading /usr/share/sbt/bin/sbt-launch-lib.bash
Getting org.scala-sbt sbt 0.13.0 ...

:: problems summary ::
:::: WARNINGS
        module not found: org.scala-sbt#sbt;0.13.0

    ==== local: tried

      /home/myUser/.ivy2/local/org.scala-sbt/sbt/0.13.0/ivys/ivy.xml

        ::::::::::::::::::::::::::::::::::::::::::::::

        ::          UNRESOLVED DEPENDENCIES         ::

        ::::::::::::::::::::::::::::::::::::::::::::::

        :: org.scala-sbt#sbt;0.13.0: not found

        ::::::::::::::::::::::::::::::::::::::::::::::



:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
unresolved dependency: org.scala-sbt#sbt;0.13.0: not found
Error during sbt execution: Error retrieving required libraries
  (see /home/myUser/.sbt/boot/update.log for complete log)
Error: Could not retrieve sbt 0.13.0
Run Code Online (Sandbox Code Playgroud)

该~/.sbt/update.log文件可在此处获得: …

configuration scala build ivy sbt

16
推荐指数
1
解决办法
3万
查看次数

Haskell 或 OCAML 可以处理敏感数据而不会通过垃圾收集泄漏吗?

我会做这样的事情(伪代码):

1. load sensitive encrypted data from file
2. decrypt the data
3. do something with the unencrypted data
4. override the data safely / securely (for example with random data)
Run Code Online (Sandbox Code Playgroud)

敏感数据在内存中保持原样(未加密)的时间应尽可能短。

不得以任何方式泄露明文数据。

A. 这样的程序可以用 Haskell 或 OCAML 编写吗?

B. 是否可以防止数据泄露,即被垃圾收集器在后台静默复制?

C. 能否在内存中正确覆盖纯数据?

据我所知,垃圾收集器 (GC) 可以在后台静默复制数据。我猜这是由分代 GC 算法完成的,但我不确定。

我知道如果攻击者设法在正确的时间/状态获取程序的内存,攻击者仍然有可能获得纯数据。我只是考虑这样做以提高安全性,因为我没有控制上下文(即操作系统、交换等)。

ocaml garbage-collection haskell memory-management

16
推荐指数
2
解决办法
257
查看次数

如何使用Slick的映射表与外键?

我正在努力使用Slick提升的嵌入和映射表格.API对我来说很奇怪,也许只是因为它的构造方式对我来说是不熟悉的.

我想构建一个Task/Todo-List.有两个实体:

  • 任务:每个任务都有一个对下一个任务的可选引用.这样就构建了一个链表.目的是用户可以按其优先级排序任务.此顺序由任务到任务的引用表示.
  • TaskList:表示带有标签和对列表的第一个Task的引用的TaskList.

    case class Task(id: Option[Long], title: String, nextTask: Option[Task])
    case class TaskList(label: String, firstTask: Option[Task])


现在我尝试为这两个实体编写数据访问对象(DAO).

import scala.slick.driver.H2Driver.simple._
import slick.lifted.MappedTypeMapper

implicit val session: Session = Database.threadLocalSession
val queryById = Tasks.createFinderBy( t => t.id )

def task(id: Long): Option[Task] = queryById(id).firstOption

  private object Tasks extends Table[Task]("TASKS") {
    def id = column[Long]("ID", O.PrimaryKey, O.AutoInc)
    def title = column[String]("TITLE")
    def nextTaskId = column[Option[Long]]("NEXT_TASK_ID")
    def nextTask = foreignKey("NEXT_TASK_FK", nextTaskId, Tasks)(_.id)
    def * = id ~ title ~ nextTask <> (Task, Task.unapply …
Run Code Online (Sandbox Code Playgroud)

database orm persistence scala slick

9
推荐指数
1
解决办法
3327
查看次数

控制台输出是阻塞操作吗?

当Java程序调用System.out.println()或Scala程序调用println()时,线程是否阻塞?

我正在编写一个带有大量子任务的Scala程序.每个子任务都在Future中执行.建议actor和future内的代码不会阻塞,以便后续任务也不必等待.但我想在控制台上打印很多.

如果是阻塞操作:我可以做些什么来优化性能?

  • 我应该使用专用线程进行控制台输出,以便线程是唯一阻塞的线程吗?
  • 还有其他任何建议吗?

当然,我可以尝试减少输出量或收集StringBuilder中的一些输出并将它们一起打印,这样可以减少输出操作的数量.

java multithreading scala nonblocking blocking

8
推荐指数
2
解决办法
2759
查看次数

akka在哪个方面是实时的?

在几个地方有一个状态,akka在某种程度上是"实时".例如:

http://doc.akka.io/docs/akka/2.0/intro/what-is-akka.html

不幸的是,我无法找到更深入的解释,akka是"实时"的.所以这就是问题:

akka在哪个方面是实时的?

我假设aka不是真正的以下定义意义上的实时计算系统,不是吗?:https://en.wikipedia.org/wiki/Real-time_computing

scala real-time definition actor akka

6
推荐指数
1
解决办法
2067
查看次数

如何将标准Java类型映射到SQL类型?

我想编写一个程序,它自动通过JDBC创建RDBMS表.要向表中添加列,我需要知道列的名称和列的RDBMS数据类型.我已经有了列的名称.我没有列的RDBMS类型,但我有这些列的Java类型.所以我需要将这些Java类型映射到RDBMS数据类型.Java类型可以是以下之一:

  • 原始类型
  • 包装类型的基本类型
  • 串

  • 所以我的问题是:如何将这些java类型映射到RDBMS类型?

  • 是否有一部分JDBC或库已经处理了这种映射?
  • 有没有可以帮助我的课程?

特别是我正在使用PostgreSQL.因此,如果没有通用的方法,那么让它与PG一起运行将是非常重要的.

提前致谢

java postgresql types jdbc relational-database

5
推荐指数
2
解决办法
1万
查看次数

scala是否足以用于本机,系统和内核编程?

  1. 是否有编译器将Scala代码转换为本机代码?
    • 有没有发布的编译器?
    • 是否正在开发编译器?
    • 如果没有这样的编译器,是否可以编写一个?
      • 如果不可能:原因是什么?
  2. Scala是否足以进行系统编程?
  3. Scala是否足以用于内核编程(例如编程设备驱动程序)?
  4. 如果Scala不足以进行系统或内核编程:原因是什么?

我知道Scala已经成为Java平台的目标.据我所知,Scala也适合.Net/C#中间代码的东西.恕我直言Java和.Net平台相对类似,这并不奇怪.

Java和.Net平台提供的服务或某种基础结构可能在系统和内核开发中缺失.

  1. Java平台的哪些功能对于Scala是必不可少的还是必需的,这些功能在系统/内核开发中缺失?
  2. 通过将现有解决方案集成到系统/内核开发或未来开发中,可以涵盖哪些功能/要求?

compiler-construction kernel scala native systems-programming

3
推荐指数
1
解决办法
876
查看次数

是否可以使用JDBC作为RDBMS的抽象层?

JDBC提供了一个API,可用于连接到不同的RDBMS或类似的数据存储.但数据存储区的实现方式不同(例如SQL方言).

是否可以以这种方式使用JDBC,我的查询和语句适用于大多数常见的RDBMS(例如:Oracle,PostgreSQL,SQL Server,MySQL)?

这个问题在两个方面对我很有意思:*常见SQL(INSERT,UPDATE,SELECT等)*访问元数据(获取有关表和列的信息)

我目前正在尝试使用自编写的持久性框架,并希望在其下插入JDBC数据存储区.因此,如果我编写JDBC数据存储区适配器,那么它将很好,如果它可以在大多数常见的RDBMS上工作.

提前致谢

java sql abstraction jdbc relational-database

2
推荐指数
1
解决办法
640
查看次数

在mixin中,scala编译器可以强制实现抽象特征方法吗?

我有一个抽象方法和具体实现方法的特征,所以这样的事情:

trait MyTrait extends BaseClass {
    def myAbstractMethod: MyReturnType
    def myConcreteMethod = { /*implementation*/ }
}
Run Code Online (Sandbox Code Playgroud)

现在我混合了这个特质:

class MyClass extends BaseClass with MyTrait {

}
Run Code Online (Sandbox Code Playgroud)

BaseClass不实现抽象方法.我期望scala编译器在混合特征时强制执行抽象方法(就像Java接口一样).但是没有编译器错误.

我的具体情况比较复杂.我无法测试运行时发生的事情.

  1. 为什么scala编译器不强制执行抽象方法?
  2. 我可以让scala编译器强制执行抽象方法吗?
  3. 我必须在某处添加摘要或覆盖吗?
  4. 当我尝试创建和使用MyClass的实例时,在运行时会发生什么?

compiler-construction scala traits mixins abstract-methods

2
推荐指数
1
解决办法
533
查看次数

是否可以将数据库表命名为Java类型?

我想要像Java类型的名称一样的RDBMS表.例:

mytld.mycompany.myproject.mypackage.mysubpackage.MyClass
Run Code Online (Sandbox Code Playgroud)

目前我正在尝试使用PostgreSQL.它给了我这个错误:

FEHLER:falscher qualifizierter姓名(zu viele Namensteile):mytld.mycompany.myproject.mypackage.mysubpackage.MyClass

在英语中,这意味着:

错误:错误的限定名称(多名称部分):mytld.mycompany.myproject.mypackage.mysubpackage.MyClass

  • 是不是像数据库对象那样可以用标点名称引用?
  • 我也可以用"."代替.另一个角色.有没有强大的算法来做到这一点?
  • 有没有办法将确切的Java类名称用作数据库表?

java sql database postgresql

0
推荐指数
1
解决办法
78
查看次数