问题标签 [erl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1095 浏览

erlang - 将 Couchbase 2.2 配置为使用短主机名

我需要将 Couchbase 2.2 配置为使用短主机名

目前我正在使用 Couchbase 2.0.1,在这种情况下,解决方案很简单:

  1. /opt/couchbase/var/lib/couchbase/ip在和 /opt/couchbase/var/lib/couchbase/ip_start文件中设置短主机名。
  2. extra="-name ns_1@$ip"将 for extra="-sname ns_1@$ip"in_start()函数更改为/opt/couchbase/bin/couchbase-server. 此参数用于运行 erl ( -run ns_bootstrap -- $extra)

此步骤允许我使用短主机名配置节点并基于这些创建集群。

在 Couchbase 2.2 中我不能这样做,因为erl使用babysitter运行。我尝试将保姆配置为使用短主机名,但我无法使其工作......

这些服务器部署在一个只处理短主机名的私有虚拟化环境中。

每个节点有 2 个 ip,一个公共的,一个私有的。如果我ping从自身运行命令,我会得到他们的私有 IP,然后我从任何其他节点运行 ping 命令,我会得到他们的公共 IP

比如我有一个节点:myhost-00(私网IP:192.168.8.170 公网IP:10.254.171.29)

从本身:

从其他节点:

有任何想法吗?

0 投票
3 回答
9043 浏览

linux - 从tar安装erlang导致错误,想知道如何指定文件夹

我有了开始使用 Erlang 的灵感,但我在安装它时遇到了问题……我正在使用 Linux Mint 16 (petra)。我安装了依赖项,然后下载了 otp_src_17.1.tar.gz 并运行了 'tar -zxf otp_src_17.1.tar.gz' 然后运行了 ./configure,这给了我一些错误,导致无法运行 make。

这些是我得到的错误(实际上我所做的是我做了 ./configure > configure.txt 以获取它在配置时打印的所有行,并且它仍然方便地将所有有错误的东西打印到控制台 - 整洁)

问题是 - 我知道我有 ncurses 库,事实证明,当我执行“sudo apt-get install ncurses-base ncurses-bin”时,它说:

当我运行“locate ncurses”时,它给了我以下信息:

我不知道从哪里开始。谢谢你的帮助

0 投票
1 回答
129 浏览

erlang - Erlang转换二进制连接?

如何将该二进制格式转换为此[<<"xys">>,<<"est">>] -> [<<"xys","est">>].

0 投票
1 回答
142 浏览

string - erlang中的字符串值

我是二郎的新手。我必须维护和实现一个用 erlang 构建的后端项目的新功能。我在 c/c++、php、ruby、python 和 javascript 方面有很强的背景。我在实现从电话号码列表中删除一些前缀的功能时遇到了问题

编译后我运行

我收到以下错误:

这似乎是 Length = string:len(Prefix) 的问题,但是我测试运行

它适用于 3 的结果。我的字符串值列表有什么问题吗?请帮忙。

0 投票
1 回答
1225 浏览

erlang - 为什么我的 Erlang shell 不加载 rebar 依赖项?

我有一个使用 rebar 和这个配置的简单项目:

我的目录结构是:

(对墙感到抱歉)每个依赖项的 ebin 文件夹中都有一个 .app 文件,我正在运行 command erl -pa apps/*/ebin -pa ebin -pa deps/*/ebin。我希望我应该能够application:ensure_all_started(somedep).在“somedep”是依赖项的名称的地方运行,并且在它的 ebin 文件夹中定义了一个 .app。但是当我为其中任何一个运行它时,我得到了错误{error,{somedep,{"no such file or directory","somedep.app"}}}。当我为自己的应用程序运行它时,我得到了正确的响应({ok,_})。因为我无法启动依赖项的应用程序,所以我自己的应用程序失败并出现undef错误。我是否错过了向 shell 注册我的 .app 文件的步骤?

0 投票
1 回答
305 浏览

erlang - 为什么我的 Erlang 应用程序崩溃了?

我正在构建一个简单的 erlang 应用程序,并且对环境非常陌生,所以我无法理解我遇到的一些错误。我不确定我的问题的根源是什么,所以如果有任何我没有发布的相关内容,请告诉我:

我正在运行的模块的来源:

我按以下顺序运行application:start(basilisk_server).并获取这些消息:

我遇到的主要问题是确定错误的实际来源。我io:format有一段时间认为这是问题所在,但我相信这是一个“红鲱鱼”,而 bad_result 是我问题的根源。我以几乎相同的状态运行程序并且它正在运行,但突然开始出现此错误。我回滚了大部分更改,但它并没有停止。我还尝试重新启动,以防后台进程出现问题。

0 投票
2 回答
276 浏览

json - 难以解包 JSON 元组字符串

我想出了如何使用钢筋。我正在尝试使用 jsx(jiffy 在 Windows 上无法正常工作)来解析我使用 openexchangerates.org API 获得的 json,但我什至无法弄清楚如何正确利用 Erlang 的广泛二进制功能来解包获得的 JSON 元组。使用以下代码片段,我设法获得了一个包含我需要的所有数据的元组:

这是获得的响应:

我不明白为什么这段代码不起作用:

JSX 允许很多解析功能,但前提是我有一个二进制文件作为我的 JSON 表示,并且我从货币 API 获得的这个 JSON 是一个元组中的字符串......我有点迷失在哪里开始研究。使用模式匹配解包元组据说非常简单(我已经完成了一些 Prolog 编程,我可以看到 erlang 具有类似的行为)但是是否有另一种更好的、适合 Erlang 的方法来获取 JSON 的“速率”部分我收到作为回应?

谢谢!我正在开发一个很酷的网络应用程序来学习 erlang,这是一个很好的第一步。我有三本 Erlang 书籍,我正在努力阅读它们,但问题是我希望尽早获得尽可能多的实用知识。我喜欢这种语言,但我想尽快打下坚实的基础。

谢谢!

0 投票
1 回答
123 浏览

list - Erlang:具有来自另一个范围的变量的函数

请帮助我在 Erlang 上正确编写函数。函数应该从队列中删除包(成功发送)。我认为应该是这样,但它不起作用。Erlang 说:第 3 行的非法模式 :(

0 投票
2 回答
727 浏览

erlang - 将列表拆分为 2 个相等和的列表

我想知道如何将给定列表拆分为两个列表,以使两个列表具有相同的总和。我想通过使用并发来做到这一点。我正在用erlang做这个。

所以,我正在做这样的事情:读取列表,如果它的总和是偶数,则继续,否则失败。取列表的第一个元素并检查它是否大于总和的一半,如果不是,则将此元素添加到新列表中。接下来,我取列表的第二个元素,检查这个元素和新列表的总和并执行相同的操作。依此类推。这样当新列表中的总和等于第一个列表总和的一半时,它会调用另一个函数来发送剩余的元素。

但是,这样我有时会陷入无限循环。有人可以帮忙吗?

0 投票
1 回答
84 浏览

erlang - Erlang 的 Eshell 如何保持输入行不受异步输出的影响?

我想用 Erlang 以外的另一种语言实现 REPL,并且对交互式erl(Eshell)提示符的这个特性非常感兴趣:

所以我在这里所做的是产生一些最终写入终端的后台进程。与此同时,我i can ty刚刚输入了五秒钟,"later"并被插入到正上方2>,结果是:

在其他语言中,例如 Bash 或 Node.js,这宁愿会导致类似的结果:

Erlang 是如何做到这一点的?我试过用谷歌搜索,甚至快速浏览了它的源代码,但不知道它是如何完成的。我认为它必须涉及一些终端控制序列?