免责声明:erlang新手.
最初吸引我到erlang的一件事是演员模型; 不同进程同时运行并通过异步消息进行交互的想法.
我刚刚开始考虑OTP,特别是看gen_server.我见过的所有示例 - 并且授予它们是教程类型示例 - 使用handle_call()
而不是handle_cast()
实现模块行为.
我觉得有点混乱.据我所知,handle_call是一个同步操作:调用者被阻塞,直到被调用者完成并返回.这似乎与异步消息传递哲学背道而驰.
我即将开始一个新的OTP应用程序.这似乎是一个基本的架构决策,所以我想在开始之前确定我理解.
具体来说,我的问题是:
谢谢.
我们正在寻求一种bdd风格的方法,以Gojko Adzic的规范为例启发。实现是在Java中进行的,开发人员已经在编写junit测试。
关键要求是规范(验收测试)可由非开发人员编写,阅读和维护。该项目将以敏捷团队的身份运行-因此,如果开发人员必须遵守规范,那就很好。但是,我不希望开发人员,测试人员或领域专家必须阅读或编写类似于代码的内容。
到目前为止,我已经研究了FitNesse,Concordion和其他各种工具(例如Spock)。我拒绝使用Spock和类似工具,因为它们将开发人员作为主要受众。FitNesse似乎可以满足大多数要求。
不过,Concordion可能是当前的最爱:规格看起来更简洁。
所以我的问题(实际上是三个):
谢谢。
我需要对一个非常大的csv文件(c.8.5GB)进行几个相对简单的更改。我最初尝试使用各种读取器功能:read.csv,readr :: read.csv,data.table :: fread。但是:它们全部用尽了内存。
我在想我需要使用流处理方法。读取,更新,写入,重复。我找到了正确的答案。但是我不怎么终止循环(我是R的新手)。
所以我有两个问题:
当前代码如下:
src_fname <- "testdata/model_input.csv"
tgt_fname <- "testdata/model_output.csv"
#Changes needed in file: rebase identifiers, set another col to constant value
rebase_data <- function(data, offset) {
data$'Unique Member ID' <- data$'Unique Member ID' - offset
data$'Client Name' <- "TestClient2"
return(data)
}
CHUNK_SIZE <- 1000
src_conn = file(src_fname, "r")
data <- read.csv(src_conn, nrows = CHUNK_SIZE, check.names=FALSE)
cols <- colnames(data)
offset <- data$'Unique Member ID'[1] - 1
data <- rebase_data(data, offset)
#1st time …
Run Code Online (Sandbox Code Playgroud) 想知道是否可以在erlang中打印没有换行符的回车?即相当于printf("this will be replaced next time \r");
C.
看了一下io:format()文档并没有看到任何内容.它似乎只支持~n,相当于回车+换行对(C中的'\n').
谢谢.
我已经使用Tycho构建了一个Eclipse更新站点,但是当尝试从其中安装一个功能到目标IDE失败时.
更新站点建立良好; 我可以从目标Eclipse安装中看到它并选择要安装的功能.但是,依赖性检查在安装开始时失败,因为它无法找到声明的依赖项(org.eclipselabs.xtext.utils.unittesting).这应该不是依赖:它错误地包含在MANIFEST.MF中,用于我的一个eclipse插件项目.
我从清单中删除了依赖项并mvn clean install
再次运行.构建报告成功,但是当我尝试使用新构建的更新站点时,它仍然抱怨对org.eclipselabs.xtext.utils.unittesting
(a)的依赖性存在并且(b)不能满足.
所以问题是:我还需要做些什么才能从生成的更新站点中删除依赖项?
谢谢你的任何指示.
PS:我知道我可以在目标eclipse安装中添加oexuunittesting的站点,以便它可以满足依赖性.但是我不想这样做; 该功能不需要它,我不希望其他用户必须添加不必要的依赖项.