来自Python,Javascript和Java等命令式语言,我经常阅读函数开销以及为什么要从性能角度避免映射.显然,这些都不是函数式语言,而外国概念通常往往不那么优化,也不那么惯用.我知道调用函数正在将值从寄存器推回到堆栈,这是很昂贵的.
因此,与最近关于计划生育的概念和语言,我真的不知道如何哈斯克尔解决这个问题的嗡嗡声?这只是编译器内联的内容吗?除此之外,JVM上的FP-Languages(Clojure/Scala)如何解决这个问题?甚至没有一个像样的Tail-Call优化在优化FP Code方面也说明了JVM的功能.
谢谢!
所以在python中对单身人士有很多仇恨.我通常看到有一个单身通常是不好的,但是那些有副作用的东西,比如使用/查询数据库呢?为什么我可以为每个简单查询创建一个新实例,当我可以重新使用已经再次设置的当前连接时?什么是pythonic方法/替代?
谢谢!
我最近一直在考虑如何正确地使用我的webframework/application-stack.我正在慢慢转向scala和函数式编程(来自Python和CherryPy).因此,调查Play是很自然的,因为它是最广泛支持的框架(现在即使是Typesafe也采用了它).如果我在这里遗漏了什么,请随意纠正我.
因此,游戏真正拥抱无状态webapps的想法,我很难在身份验证和授权方面解决它.现在经过一些在线挖掘(基于表单的网站身份验证的权威指南)后,我得出的结论是,必须对我的后端(JSON-RPC或其他)的每次调用进行身份验证和授权,远离旧会话 -饼干的想法.
现在有什么最好的方法来实现今天的技术?
那怎么样:
我想到了"简单"DigestAuth,因为它被证明并且广泛存在但是它对旧的和生锈的基本认证有类似的感觉.
谢谢!
可能很简单的问题,我还没有找到答案:
ShadowDOM或WebComponents(作为更大的标准)是否实际上封装了JavaScript?就像每个组件都有单独的命名空间一样?
从我遇到的聚合物到现在还没有,这是显而易见的,因为聚合物通过JS进行聚合填充.
谢谢!
我有以下情况:
在初始化(实际上是第一次接收)套接字时,我想检查握手(TLS)中的某些内容,这必须仅在连接初始化时检查,而不是在每次进一步接收时检查.
目前我有一个奇怪的:
// this is happening outer scope
var somethingThatGetsComputedinInit = 0
def receive {
if (init) {
somethingThatGetsComputedinInit = doinitstuff(StuffIOnlyGetInitially)
init = false
}
}
Run Code Online (Sandbox Code Playgroud)
虽然它会起作用,但这种气味如此迫切和难看.什么是纯粹的功能解决方案?
我在我的主执行文件中有这个:
databaseUrl = appPath + '/db/timey.db'
Run Code Online (Sandbox Code Playgroud)
这指向我的SQLite DB.
我已经做了一些封装来访问我的模型(Data/DB).所以在databaseURL最终被使用之前,我需要从main - > view.py - > model.py - > db.py 传递它.这将是愚蠢的,因为例如我的视图类不需要知道我的数据库或其路径.那么,什么是一种适当的方法来实际使这条路径"全局"可访问而不会一直传递它?
我试图使databaseUrl全局化,但我不喜欢这个想法,并且还没有真正让它像这样工作.
将信息存储在外部文件中将是一种过度杀伤,因为它无论如何都是唯一的(常量!)全局使用变量.
谢谢!
python ×2
scala ×2
database ×1
haskell ×1
javascript ×1
performance ×1
polymer ×1
singleton ×1
state ×1
stateless ×1