问题列表 - 第27530页

为什么用函数式语言编写编译器更容易?

我一直在考虑这个问题,但实际上无法在Google上找到答案以及Stackoverflow上的类似问题.如果有重复,我很抱歉.

许多人似乎都说,在函数式语言(如OCaml和Haskell)中编写编译器和其他语言工具比使用命令式语言编写它们更有效,更容易.

这是真的?如果是这样的话 - 为什么用函数式语言而不是像C这样的命令式语言来编写它们是如此高效和容易?另外 - 在一些函数式语言中,语言工具不是像C这样的低级语言吗?

compiler-construction ocaml haskell functional-programming

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

如何在UITableViewCell wordwrap中创建文本?

我有一个分组的UITableView,有几个部分.一些单元格中的文本可能会很长,我想知道如何使文本自动换行?

iphone xcode cocoa-touch objective-c uitableview

3
推荐指数
2
解决办法
8313
查看次数

将列表转换为字符串

我从文件中提取了一些数据,并希望将其写入第二个文件.但我的程序返回错误:

sequence item 1: expected string, list found
Run Code Online (Sandbox Code Playgroud)

这似乎正在发生,因为write()想要一个字符串,但它正在接收一个列表.

那么,关于这段代码,如何将列表转换buffer为字符串以便我可以将内容保存bufferfile2

file = open('file1.txt','r')
file2 = open('file2.txt','w')
buffer = []
rec = file.readlines()
for line in rec :
    field = line.split()
    term1 = field[0]
    buffer.append(term1)
    term2 = field[1]
    buffer.append[term2]
    file2.write(buffer)  # <== error
file.close()
file2.close()
Run Code Online (Sandbox Code Playgroud)

python

62
推荐指数
4
解决办法
8万
查看次数

Boost.Test:寻找一个有效的非平凡测试套件示例/教程

如Boost.Test文档和例子并不真的似乎包含我发现任何不平凡的例子,到目前为止,两个教程这里这里同时有帮助都是非常基本的.

我希望为整个项目提供一个主测试套件,同时保持每个模块套件的单元测试和可以独立运行的灯具.我还将使用模拟服务器来测试各种网络边缘情况.

我在使用Ubuntu 8.04,但我会采用Linux或Windows的任何示例,因为我正在编写自己的makefile.

编辑

作为测试,我做了以下事情:

// test1.cpp
#define BOOST_TEST_MODULE Regression
#include <boost/test/included/unit_test.hpp>

BOOST_AUTO_TEST_SUITE(test1_suite)

BOOST_AUTO_TEST_CASE(Test1)
{
    BOOST_CHECK(2 < 1);
}

BOOST_AUTO_TEST_SUITE_END()

// test2.cpp
#include <boost/test/included/unit_test.hpp>

BOOST_AUTO_TEST_SUITE(test2_suite)

BOOST_AUTO_TEST_CASE(Test1)
{
    BOOST_CHECK(1<2);
}

BOOST_AUTO_TEST_SUITE_END()
Run Code Online (Sandbox Code Playgroud)

然后我编译它: g++ test1.cpp test2.cpp -o tests

这给了我关于链接期间的大量"多重定义"错误.

当它在一个文件中时它工作正常.

c++ boost unit-testing tcp mocking

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

在父类上调用静态方法时,父类可以推断出子类型(C#)的类型吗?

假设我们有2个类,Child,以及它继承的类,Parent.

class Parent
{
    public static void MyFunction(){}
}

class Child : Parent
{
}
Run Code Online (Sandbox Code Playgroud)

是否有可能在父类中确定如何调用该方法?因为我们可以用两种方式来称呼它:

Parent.MyFunction();
Child.MyFunction();
Run Code Online (Sandbox Code Playgroud)

我目前的方法是尝试使用:

MethodInfo.GetCurrentMethod().ReflectedType; // and
MethodInfo.GetCurrentMethod().DeclaringType;
Run Code Online (Sandbox Code Playgroud)

但两者似乎都返回父类型.

如果你想知道什么,我正在努力完成(为什么我违反了父母不应该对孩子有任何了解的基本OOP规则),这就是它的缺点(如果你想要,请告诉我)长版):

我有一个Model结构,表示我们持久存储到数据库的一些数据.所有这些模型都从一个抽象的Parent继承.此父实现了一些事件,例如SaveEvent,DeleteEvent等.我们希望能够订阅特定于该类型的事件.所以,即使事件在父母身上,我也希望能够做到:

Child.SaveEvent += new EventHandler((sender, args) => {});
Run Code Online (Sandbox Code Playgroud)

我有一切就绪,事件实际上由事件处理程序字典支持,按类型进行哈希处理.我需要做的最后一件事就是在做Child.SaveEvent时正确检测Child类型.

我知道我可以在每个子类中实现事件(甚至通过使用抽象来强制它),但是将它全部保存在父类中会很好,这是实际触发事件的类(因为它实现了公共保存/删除/更改功能).

c# inheritance static-methods .net-3.5

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

C#Combobox(winforms)如何使值显示为百分比

我有一个带有一组值的组合框(5,10,15,20).

当用户选择一个值时,我希望它们显示为百分比(5%,10%,15%,20%).

我正在使用值##%播放格式字符串,但这不起作用.

c# winforms

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

Git强制完全同步到master

我的工作场所使用Subversion进行源代码控制,所以我一直在使用git-svn来获取我自己的分支的优点,我可以随意提交,而不需要触及主回购等.

由于我的git svn checkout是本地的,我已将其克隆到网络共享以充当备份.我的想法是,如果我的桌面进行转储,我至少会在网络共享上拥有回购,以获得我尚未有机会提交的更改.

我的工作流程是从桌面工作,进行更改,提交等.在一天结束时,我想用我当前的所有更改来更新网络共享上的repo.我在网络共享上设置了repo git clone repo_on_my_desktop,然后使用更新网络共享上的repo git pull origin master.我遇到的问题是当我在git rebase提交到主svn存储库之前使用do a 来压缩多次提交时.当我这样做时,当我尝试在晚上备份时,我在网络共享上的repo上发生合并冲突.

有没有办法简单地与桌面上的存储库完全同步,而不是git clone每晚都做新的?

svn git git-svn

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

如何使用jQuery查询字符串对象插件-设置,清空,删除方法不起作用

我正在使用此插件:http : //plugins.jquery.com/project/query-object

'get'和'toString'方法工作正常,但'set','empty'和'remove'方法无效。在作者的演示中,他仅使用“ get”和“ toString”,但在页面顶部的示例中,他使用了其余的“ nice-to-have”方法。

有人遇到过吗?

谢谢。

jquery query-string

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

-all_load链接器标志有什么作用?

在编译Objective-C代码时,我无法找到-all_load标志所做的任何事情.

我有一些问题上传二进制文件到Apple,他们说这是因为我没有使用这个标志,但我的代码编译甚至没有它.

有人可以帮助我吗?

谢谢

iphone linker gcc objective-c

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

不同的Scala Actor实现概述

我正试图找到'正确'的演员实现.我意识到有一堆它们,选择一个有点令人困惑.就个人而言,我对远程演员特别感兴趣,但我想完整的概述会对很多人有所帮助.这是一个非常普遍的问题,所以请随意回答您所了解的实施问题.

我知道以下Scala Actor实现(SAI).请添加缺少的.

  • Scala 2.7(区别)
  • Scala 2.8
  • Akka(http://www.akkasource.org/)
  • 电梯(http://liftweb.net/)
  • Scalaz(http://code.google.com/p/scalaz/)


  • 这些SAI的目标用例是什么(轻量级与"重型"企业框架)?

  • 他们支持远程演员吗?远程参与者在最高审计机关中有哪些缺点?
  • 他们的表现如何?
  • 社区有多活跃?
  • 他们开始有多容易?文档有多好?
  • 它们有多容易扩展?
  • 他们有多稳定?哪些项目正在使用它们?
  • 它们的缺点是什么?
  • 他们的设计原则是什么?
    • 它们是基于线程还是基于事件(接收/响应)或两者兼而有之?
    • 嵌套的receiveS
    • hotswapping Actor的消息循环

scala lift scalaz actor akka

53
推荐指数
4
解决办法
9670
查看次数