7得票4回答
如何在重构后确保代码仍然正常运行(动态语言)

如何确保重构后代码仍然可用(例如,变量名称更改后)? 在静态语言中,如果重命名一个类但其他引用该类的类没有更改,则会出现编译错误。 但是,在动态语言中,没有这样的安全网,如果您不够小心,代码可能会在重构期间中断。您可以使用单元测试,但当您使用模拟时,很难知道名称更改,因此可能无济于事。 ...

7得票2回答
CouchDB最适合动态语言吗?

我熟悉CouchDB,并且想到了将其结果映射到Scala对象,并找到一些自然的与之交互的方法。 但是我发现像Ruby和Javascript这样的动态语言在使用CouchDB的json/文档中心/无模式方法方面做得非常好。 有没有好的方法在静态语言中使用Couch?

7得票2回答
如何通过堆栈跟踪访问本地变量?(模拟动态作用域)

背景 虽然在运行时编译C#代码是可能的,但是无法将生成的代码包含并在当前作用域中运行。相反,所有变量都必须作为显式参数传递。 与像Python这样的动态编程语言相比,我们永远无法真正复制eval的完整行为(如此示例所示)。 x = 42 print(eval("x + 1")) # Pr...

7得票2回答
如何在运行时将方法附加到动态创建的C#类型?

我被迫使用一种内部数据访问库,它实际上是将XML传递给存储过程,然后返回XML。我无法改变这种情况。我曾试图获得ActiveRecord的批准,但我的请求被拒绝了。然而,使用http://blog.bodurov.com/Post.aspx?postID=27提供的优秀代码,我添加了一个扩展方...

7得票2回答
PHP中的堆栈和堆是什么?

我正在学习操作系统,有一件事我不太明白,那就是堆和栈。我知道它们的好处以及每个的工作原理,但在动态语言的情况下,我无法弄清楚如何分配栈。在静态类型的语言中,所有原始数据类型都存储在栈上,因为它们很小,并且将按照更多或更少相同的顺序进行释放,但是在像PHP这样的语言中,在运行时并不知道这一点。那...

7得票3回答
为IronRuby和IronPython做出支持的理由

我猜大家都已经听说了一些关键开发人员离开动态语言团队的消息,因为他们认为微软对动态语言的支持正在减弱。 我非常喜欢Python,并尝试经常使用它。因此,顺理成章地,我关心IronPython,并希望看到它继续发展。我相信许多人也对IronRuby有同样的感受。但是我仍然无法完全弄清楚.NET...

7得票13回答
动态语言的用途

我目前的主要编程语言是D语言,但因为必须学习Python才能上课,所以我正在学习Python。虽然我理解为什么动态语言对于那些没有类型推断或模板的静态语言编程人员来说会是一股清新之风(在我看来,模板在很大程度上是编译时鸭子类型),但我很好奇即使有这些特性,动态语言的好处是什么。 归根结底,如...

7得票5回答
动态语言和函数式语言有什么区别?

我经常发现开发人员将函数式语言和动态语言一起使用,并想知道它们为什么总是被放在一起。它们之间有什么区别?一个语言可以既是动态的又是函数式的吗?它们是否互补?我们为什么需要它们? 我是C#程序员,但我还不理解这个动态/函数式的东西(C#将在版本4中具有一些动态特性。它也会是函数式的吗?这里到底...