现在我们构建一个实时分析系统,它应该是高度分布式的.我们计划使用分布式锁和计数器来确保数据的一致性,我们需要一种分布式映射来了解哪个客户端连接到哪个服务器.我之前没有分布式系统的经验,但我认为我们有两个选择:
Java的+ Hazelcast
Golang + ETCD
但是在主题背景下彼此的利弊是什么?
我是lisp的初学者并且有一个问题.当我直接在REPL中编写一些代码(没有任何.lisp文件!)时,如何保存解释器的工作/状态以便下次恢复并继续工作?
(我正在使用ECL)
感谢名单!抱歉我的英语不好;)
我发现了一些C++ 11的功能并且有问题.我有一个成员函数'call'
class cscript
{
public:
template <typename ret_t, typename... params>
bool call(ret_t &ret, const char * name, params... parameters);
....
Run Code Online (Sandbox Code Playgroud)
执行:
template <typename ret_t, typename... params>
bool cscript::call(ret_t &ret, const char * name, params... parameters)
{
ret_t (*func)(params...);
func = (decltype(func)) tcc_get_symbol(tcc, name);
if (!func)
return true;
ret = func(parameters...);
return false;
}
Run Code Online (Sandbox Code Playgroud)
链接时显示以下错误:
obj\Release\main.o:main.cpp:(.text.startup+0xcc)||undefined reference to `bool cscript::call<int, int, int>(int&, char const*, int, int)'|
Run Code Online (Sandbox Code Playgroud)
电话示例:
script.call(ret, "sum", 2, 3);
Run Code Online (Sandbox Code Playgroud)
有关如何使这项工作的任何建议?
任务:在我的项目中嵌入ECL lisp,设置错误处理和详细的错误报告(发生的地方,错误类型等)
我试着这样做:
cl_def_c_function_va(
c_string_to_object("SYSTEM:UNIVERSAL-ERROR-HANDLER"),
LispErrorHandler);
Run Code Online (Sandbox Code Playgroud)
ECL没有关于其嵌入式API的文档,也没有关于错误处理的文档......
你能建议如何实现吗?
Scala中是否有像lisp这样的语言结构progn?
谢谢!