小编Sal*_*lil的帖子

为什么Clojure有5种方法来定义一个类而不是一个?

Clojure具有gen-class,reify,proxy以及deftype和defrecord来定义新的类类数据类型.对于一种重视句法简洁性并憎恶不必要的复杂性的语言来说,这似乎是一种失常.有人可以解释为什么会这样吗?Common Lisp风格的defclass能够满足吗?

clojure clojure-java-interop

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

如何使用相同的键合并多个dicts?

我有多个dicts /键值对,如下所示:

d1 = {key1: x1, key2: y1}  
d2 = {key1: x2, key2: y2}  
Run Code Online (Sandbox Code Playgroud)

我希望结果是一个新的dict(如果可能的话,以最有效的方式):

d = {key1: (x1, x2), key2: (y1, y2)}  
Run Code Online (Sandbox Code Playgroud)

实际上,我希望结果d是:

d = {key1: (x1.x1attrib, x2.x2attrib), key2: (y1.y1attrib, y2.y2attrib)}  
Run Code Online (Sandbox Code Playgroud)

如果有人告诉我如何获得第一个结果,我可以弄清楚其余部分.

python merge dictionary

56
推荐指数
5
解决办法
9万
查看次数

为什么Python不支持记录类型?(即可变的namedtuple)

为什么Python本身不支持记录类型?这是一个有一个可变版本的namedtuple的问题.

我可以用namedtuple._replace.但我需要在集合中包含这些记录,并且由于namedtuple._replace创建了另一个实例,我还需要修改快速变得混乱的集合.

背景:我有一个设备,我需要通过TCP/IP轮询它获得的属性.即它的表示是一个可变对象.

编辑:我有一组我需要轮询的设备.

编辑:我需要使用PyQt遍历显示其属性的对象.我知道我可以添加像__getitem__和的特殊方法__iter__,但我想知道是否有更简单的方法.

编辑:我更喜欢一个属性固定的类型(就像它们在我的设备中一样),但是它是可变的.

python collections namedtuple

48
推荐指数
5
解决办法
3万
查看次数

使用TLS通过Google SMTP发送邮件

有没有人知道我可以使用任何好的库来通过谷歌的SMTP从Haskell发送邮件?我发现SMTPClientHaskellNet.前者不支持TLS,后者似乎没有使用TLS通过SMTP发送电子邮件的示例.有人设法做到了吗?

haskell smtp smtpclient

34
推荐指数
1
解决办法
1889
查看次数

Python中的序列查找功能

如何在满足特定标准的序列中找到对象?

列表理解和过滤器遍历整个列表.是手工制作的唯一选择吗?

mylist = [10, 2, 20, 5, 50]
find(mylist, lambda x:x>10) # Returns 20
Run Code Online (Sandbox Code Playgroud)

python find sequence

27
推荐指数
3
解决办法
9310
查看次数

我可以使用哪些技术来帮助更好地理解离散数学中的概念如何用于编程?

我试图更好地理解在编程中如何使用离散数学概念(例如集合论).

我熟悉高中数学,对离散数学中使用的术语和概念有基本的了解

我理解像Haskell,Lisp,Ruby,Perl和所有基于C语言的语言.

python java discrete-mathematics

17
推荐指数
1
解决办法
1781
查看次数

玩框架+ SLICK(Scalaquery)教程

有没有人知道使用Play框架和SLICK(ScalaQuery)的好教程或示例项目(github)?我正在努力让他们一起工作.

我收到此错误:

[info] play - Application started (Dev)
[error] application - 

! @6b13oi41c - Internal server error, for request [GET /listBooks] ->

play.core.ActionInvoker$$anonfun$receive$1$$anon$1: Execution exception [[NoClassDefFoundError: Could not initialize class scala.slick.ast.opt.Relational$]]
    at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:134) [play_2.9.1-2.0.2.jar:2.0.2]
    at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:115) [play_2.9.1-2.0.2.jar:2.0.2]
    at akka.actor.Actor$class.apply(Actor.scala:318) [akka-actor-2.0.2.jar:2.0.2]
    at play.core.ActionInvoker.apply(Invoker.scala:113) [play_2.9.1-2.0.2.jar:2.0.2]
    at akka.actor.ActorCell.invoke(ActorCell.scala:626) [akka-actor-2.0.2.jar:2.0.2]
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:197) [akka-actor-2.0.2.jar:2.0.2]
Caused by: java.lang.NoClassDefFoundError: Could not initialize class scala.slick.ast.opt.Relational$
    at scala.slick.driver.BasicProfile$class.processAST(BasicProfile.scala:18) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2]
    at scala.slick.driver.PostgresDriver$.processAST(PostgresDriver.scala:69) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2]
    at scala.slick.driver.BasicProfile$class.createQueryBuilder(BasicProfile.scala:22) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2]
    at scala.slick.driver.PostgresDriver$.createQueryBuilder(PostgresDriver.scala:69) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2]
    at scala.slick.driver.BasicProfile$class.buildSelectStatement(BasicProfile.scala:23) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2]
    at scala.slick.driver.PostgresDriver$.buildSelectStatement(PostgresDriver.scala:69) ~[slick_2.10.0-M4-0.10.0-M2.jar:0.10.0-M2]
[error] application - 
Run Code Online (Sandbox Code Playgroud)

这是我的书模型:

package …
Run Code Online (Sandbox Code Playgroud)

scala scalaquery playframework-2.0

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

为什么Clojure/Lisp程序比其他动态语言更快?

基于过去几年的语言枪战,Clojure和其他Lisps的表现始终比其他大多数动态语言都要好.为什么会这样?是因为它的同质性吗?

编辑:

我不知道Clojure被编译成字节码就像Java和Scala一样. 这个stackoverflow线程揭示了为什么Clojure获得了编译和解释的优势.

performance clojure

14
推荐指数
1
解决办法
2208
查看次数

Clojure程序员如何使用宏?

我的理解是Clojure的同质性存在,以便使编写宏更容易.

基于这个stackoverflow线程,除了不使用高阶函数的DSL之外,它看起来很少使用宏.

有人可以分享一些如何在现实生活中使用宏的例子吗?

clojure

12
推荐指数
1
解决办法
1074
查看次数

REST API密钥生成策略

我需要为使用JAX-RS标准实现的REST API提供授权和身份验证,这些API旨在从移动客户端和某些设备中使用.我有多个具有唯一设备标识的设备可以发布一些数据.移动客户端只是使用GET请求来显示该数据.我更关心POST部分,我想在哪里验证客户端.另外,我想保持简单.我正在考虑通过HTTPS使用简单的HTTP基本授权,使用API​​密钥.我的问题是如何生成此API密钥?

authentication api rest jax-rs

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