我听说可以使用Mandlebrot集的图形来加密数据,并且这种加密算法是量子安全的(与许多常用算法不同,不能用量子计算机来破解).我在Google上查看了更多信息,但我只看到了一些针对更多非技术受众的文章.有没有人有这方面的资料,我可以用它来了解这个有趣的主题?
我正在设计一种编译语言,编译成中间字节码.但是,我在设计字节码结构时遇到了很多麻烦.有没有人对如何用二进制表示程序有任何指示?或者,是否有任何资源(最好是免费的)如何做到这一点?我发现的最接近的是Lua解释器的字节码的描述.
编辑:更多信息:我正在实现我自己的垃圾收集方案,该方案针对不可变性和并发性进行了大量优化.为了提高效率,我需要一些独特的字节码指令,允许程序与垃圾收集方案进行交互.
本着这个问题的精神,我想问一个类似的问题,但是关于编译器,而不是解释器.
什么是可以编译自己的代码的概念上最小的编译器?
当我说"概念上最小"时,我的意思是它只使用非常基本的概念并从那里构建,而不是它包含非常短的代码.为什么这是一个重要的区别的一个例子是OTCC是一个非常小的C编译器,它很小,因为它被混淆,不一定是因为它在概念上很简单(它也可能在概念上很简单,但我不知道;它被混淆了).
我还想补充一点,以下也可能是一个非常概念上的小程序,但实际上并没有告诉我们发生了什么,所以它并不是我正在寻找的:
(writefile argv[2] (generate (parse (readfile argv[1]))))
Run Code Online (Sandbox Code Playgroud)
我真正想要的是一种语言:
我对此感兴趣因为
如果它不存在,我可能只是自己写.:)
本着问题中其他常见错误的精神,Haskell程序员最常犯的错误是什么?我一直在教自己Haskell一段时间,我开始对语言感到很自在,开始在现实世界中应用它.
我知道在编程语言中不需要NULL,我最近决定不在我的编程语言中包含NULL.声明是通过初始化完成的,因此不可能有一个未初始化的变量.我希望这将消除NullPointerException支持更有意义的例外或者根本没有某些类型的错误.
当然,由于语言是用C实现的,因此在封面下会使用NULL.
我的问题是,除了使用NULL作为错误标志(这是用异常处理)或作为数据结构的端点,如链接列表和二叉树(这是由有区别的联合处理)是否有任何其他用例为NULL哪个我应该有解决方案?没有NULL可能会给我带来什么问题吗?
我正在写一种动态类型的语言.目前,我的对象以这种方式表示:
struct Class { struct Class* class; struct Object* (*get)(struct Object*,struct Object*); };
struct Integer { struct Class* class; int value; };
struct Object { struct Class* class; };
struct String { struct Class* class; size_t length; char* characters; };
Run Code Online (Sandbox Code Playgroud)
目标是我应该能够将所有内容作为a传递struct Object*,然后通过比较class属性来发现对象的类型.例如,要转换一个整数以供使用,我只需执行以下操作(假设它integer是类型struct Class*):
struct Object* foo = bar();
// increment foo
if(foo->class == integer)
((struct Integer*)foo)->value++;
else
handleTypeError();
Run Code Online (Sandbox Code Playgroud)
问题是,据我所知,C标准没有对如何存储结构做出承诺.在我的平台上这是有效的.但是在另一个平台struct String可能存储value之前class和我foo->class在上面访问时我会实际访问foo->value,这显然很糟糕.便携性是这里的一个重要目标.
这种方法有其他选择:
struct …Run Code Online (Sandbox Code Playgroud) 是否有算法来计算以下内容?
一些例子:
1/2 = 1/10 = 0.1 // 1 = false, 2 = N/A, 3 = N/A, 4 = N/A
1/3 = 1/11 = 0.010101... // 1 = true, 2 = -2, 3 = 10
2/3 = 10/11 = 0.101010... // 1 = true, 2 = -1, 3 = 10
4/3 = 100/11 = 1.010101... // 1 = true, 2 = 0, 3 = 10
1/5 = 1/101 = 0.001100110011... // 1 = true, 2 = -3, …Run Code Online (Sandbox Code Playgroud) 我正在为C寻找解析器.这就是我需要的:
它可以是项目的一部分,只要它解耦,以便我可以拔出解析器.
是否存在满足这些要求的现有解析器?
我正在尝试创建一个程序来启动一个进程池,比如5个进程,执行一些操作,然后退出,但是让5个进程保持打开状态.之后用户可以再次运行程序,而不是启动新进程,它使用现有的5.基本上它是生产者 - 消费者模型,其中:
我正在使用内置multiprocessing模块,目前在Python 2.6.4中,但目的是最终转向3.1.1.
这是一个基本的使用场景:
program.py operation- 一个生产者,五个消费者正在运行program.py operation- 一个生产者,五个消费者正在运行program.py operation- 两个生产者,五个消费者正在运行program.py stop并完成 - 没有进程正在运行.program.py start并完成 - 五个消费者正在运行.program.py operation- 一名检察官,五名消费者正在运行.program.py stop并完成 - 没有进程正在运行.我遇到的问题是我不知道从哪里开始:
一旦我能做到这一点,我知道如何管理流程.必须有一些可靠的方法来检测现有的进程,因为我已经看到Firefox这样做是为了防止多个Firefox实例运行,但我不知道如何在Python中这样做.
是否存在用C++编写的现有LISP解析器?我只想要解析器,而不是一个完整的解释器,但一个解释器与它一起使用将是一个加号.