小编Jef*_*eff的帖子

如何在Scala中组合选项值?

我希望能够将操作f: (T,T) => T应用于Option[T]Scala中的值.我希望结果是None两个值中的任何一个None.

更具体地说,我想知道是否有更短的方法来执行以下操作:

def opt_apply[T](f: (T,T) => T, x: Option[T], y: Option[T]): Option[T] = {
  (x,y) match {
    case (Some(u),Some(v)) => Some(f(u,v))
    case _ => None
  }
}
Run Code Online (Sandbox Code Playgroud)

我试过了,(x zip y) map {case (u,v) => f(u,v)}但结果Iterator[T]却不是Option[T].

scala type-conversion scalaz

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

如何设置Emacs使用给定的Python virtualenv?

我使用Emacs执行许多任务,当我开始使用Python时,我希望继续使用Emacs来编写Python代码.

我为Python3设置了一个virtualenv,它正在按照需要工作.我还安装了最新版本的Emacs Prelude的 Emacs 24.5 .

当我编辑所有我期望的Python源文件时 - 代码完成,对象检查等 - 但是对于我的系统范围的Python安装,而不是我为项目设置的虚拟环境.

如何告诉Emacs将虚拟环境用于给定项目?

python emacs virtualenv emacs-prelude

9
推荐指数
2
解决办法
6121
查看次数

如何在Scala中将对象用作模块/仿函数?

我想使用对象实例作为模块/仿函数,或多或少,如下所示:

abstract class Lattice[E] extends Set[E] {
  val minimum: E
  val maximum: E
  def meet(x: E, y: E): E
  def join(x: E, y: E): E
  def neg(x: E): E
}

class Calculus[E](val lat: Lattice[E]) {
  abstract class Expr
  case class Var(name: String) extends Expr {...}
  case class Val(value: E) extends Expr {...}
  case class Neg(e1: Expr) extends Expr {...}
  case class Cnj(e1: Expr, e2: Expr) extends Expr {...}
  case class Dsj(e1: Expr, e2: Expr) extends Expr {...}
}
Run Code Online (Sandbox Code Playgroud)

这样我就可以为每个晶格创建一个不同的微积分实例(我将执行的操作需要其中的信息是晶格的最大值和最小值).我希望能够混合相同微积分的表达式,但不允许混合不同表达式的表达式.到现在为止还挺好.我可以创建我的微积分实例,但问题是我不能在其他操作它们的类中编写函数.

例如,我正在尝试创建一个解析器来读取文件中的表达式并返回它们; …

scala type-inference module functor inner-classes

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

如何在NetBeans 7.4中切换隐藏文件的显示/隐藏?

嗯,基本上就是这样:

如何在NetBeans 7.4中切换隐藏文件的显示/隐藏?

每次我尝试在NetBeans 7.4中打开一个文件时,它都会显示我所有的隐藏文件,这非常烦人.我用谷歌搜索但直到现在才找到答案.

谢谢你的帮助.

installation netbeans hidden-files

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

Common Lisp中的unicode字符的语法是什么(如果有的话)?

Common Lisp中是否有unicode字符的语法?像\u03B1Java 一样?

也许类似的东西#\U+03B1,或类似的东西?

unicode syntax common-lisp

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