小编gaw*_*awi的帖子

编译器优化(如ghc -O2)是否可以更改程序的顺序(时间或存储)?

我觉得答案是肯定的,而且不仅限于Haskell.例如,尾调用优化将内存需求从O(n)改为O(l),对吧?

我确切关注的是:在Haskell上下文中,在推理程序的性能和大小时,有什么期望理解编译器优化?

在Scheme中,您可以将一些优化视为理所当然,例如TCO,因为您使用的是符合规范的解释器/编译器.

haskell ghc compiler-optimization

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

ghci适用特殊情况?

在ghci:

?> :t (pure 1)
(pure 1) :: (Applicative f, Num a) => f a
?> show (pure 1)

<interactive>:1:1:
    No instance for (Show (f0 a0))
      arising from a use of `show'
    Possible fix: add an instance declaration for (Show (f0 a0))
    In the expression: show (pure 1)
    In an equation for `it': it = show (pure 1)
?> pure 1
1
Run Code Online (Sandbox Code Playgroud)

这是否意味着ghci执行Applicative并显示结果,就像IO

请注意,pure ()并且pure (+1)不打印任何内容.

monads haskell ghci applicative

8
推荐指数
1
解决办法
453
查看次数

Checkstyle规则以防止调用某些方法和构造函数

是否可以使用Checkstyle禁止使用某些构造函数或使用系统相关默认值(locale,charset等等)的方法.我更喜欢强制执行一个策略,程序员应该明确系统相关的值.所以我认为以下项目是危险的:

  • 所有的构造者 java.io.FielWriter
    • 使用系统相关的编码
  • OutputStreamWriter(OutputStream os)构造函数java.io.OutputStreamWriter
    • 使用系统相关的编码
  • java.lang.String.toLowerCase()方法
    • 使用系统默认语言环境
  • java.util.Calendar.getInstance()方法
    • 使用系统默认语言环境和默认时区

(列表继续,你得到的图片).

是否可以使用Checkstyle 5.5强制执行此操作?

java coding-style checkstyle

7
推荐指数
1
解决办法
2037
查看次数

Haskell编译器魔术:什么需要编译器的特殊处理?

在尝试学习Haskell时,出现的困难之一就是当某些东西需要来自编译器的特殊魔法时.记住的一个例子是seq无法定义的函数,即你不能使seq2函数的行为与内置函数完全相同seq.因此,在教某人时seq,你需要提到的seq是特殊的,因为它是编译器的特殊符号.

另一个例子是do-notation,它只适用于Monad类的实例.

有时,它并不总是显而易见的.例如,延续.编译器是否知道Control.Monad.Cont或者您可能是自己发明的普通的Haskell?在这种情况下,我认为即使延续是一种非常奇怪的野兽,编译器也不需要特殊的东西.

语言扩展被搁置,其他编译器魔术Haskell学习者应该注意什么?

haskell ghc

7
推荐指数
1
解决办法
146
查看次数

将eval()与自定义全局一起使用

有没有办法在调用时指定要用于全局的对象eval()

(我不是问如何做全局eval().)

这不起作用,但这说明了我想要的:

var pseudoGlobal = {};
eval("x = 12", pseudoGlobal);
pseudoGlobal.x; // 12
Run Code Online (Sandbox Code Playgroud)

关键是真正的全局绑定不受代码eval()'ed中的隐式变量声明(即没有var关键字)的影响.

至于eval.call(pseudoGlobal, "x=12")eval.apply(pseudoGlobal, ["x=12"]),一些口译员不会允许它.

javascript global eval

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

如何使用Snap Framework维护服务器端状态?

服务器端会话不是Snap Framework的一部分.有没有办法添加某种服务器端状态?

让我假装我想为每个HTTP请求增加一个计数器.我该怎么办?

haskell session-state haskell-snap-framework

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

java中的IVR开发

我将使用Java(不带PBX)开发一个在线IVR应用程序.在软件需求中,我更喜欢在Java端实现一些数学计算和数据库通信.

如您所知,不同的技术已经准备好与Java集成,例如JTAPI,Zanzibar OpenIVR,Moho,VoiceXML,CCXML,Jive,Prophecy,Voicent,Voxeo等.

现在的问题是:什么是最好的解决方案?哪一个最容易达到?哪一个效率最高?你推荐开源框架吗?是否有用于处理IVR系统的Windows API?

java ivr jtapi voicexml ccxml

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

Monadic相当于适用<*

在阅读了Anthony样式相关解析器问题的回应之后,我试图说服自己编写monadic解析器仍然可以相当紧凑.

而不是

reference :: Parser Transc
reference = try $ do string "#{"
                     a <- number
                     char ','
                     b <- number
                     char ','
                     c <- number
                     char '}'
                     return $ Outside (a,b,c)
Run Code Online (Sandbox Code Playgroud)

我们可以简单地:

reference3 :: Parser Transc
reference3 = liftM3 (((Outside .).) .  (,,)) 
             (string "#{" >> number <<! char ',') 
             number
             (char ',' >> number <<! char '}') where 
               (<<!) = liftM2 const
Run Code Online (Sandbox Code Playgroud)

这与Anthony提供的应用版非常相似:

reference2 :: Parser Transc
reference2 = ((Outside .) …
Run Code Online (Sandbox Code Playgroud)

monads haskell parsec applicative

4
推荐指数
1
解决办法
337
查看次数

旧版本的WebSphere Application Server v7(免费试用版)

昨天,我已经下载并安装了WAS v7的免费试用版.我下载的版本是,7.0.0.9但我需要证明我的申请7.0.0.3.

我在哪里可以买到这个版本?


更新:事实证明,我真正需要的是WebSphere Application Server for Developpers

它的工作原理! 替代文字

websphere websphere-7

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