东升铮 发表于 2024-4-17 06:36:22

你有种再说一遍 发表于 2024-4-15 16:42
用代码解决代码的事情,直接制作一个lisp编译器,
然后启动编译之后把函数名换成流水号...
还能直接把lisp ...

工程量很大,光一个 1to2 的解释器就够折腾的, 当年是可以编译成.arx 文件的,这样玩的话,又回到以前咯。

chslwj521 发表于 2024-4-17 10:07:55

随然现在没明白,先收藏有待以后学习,向大师致敬!

dcl1214 发表于 2024-4-17 11:43:57

本帖最后由 dcl1214 于 2024-4-17 12:06 编辑

以下良好习惯虽然不是有助于编译程序,但是有助于代码稳定性
(getpoint "请点击一点")
如果用户按下了esc,那么就会导致程序退出,一旦程序退出,你还要在代码里面加上出错恢复,为了不让用户乱操作导致程序出错,请改成以下代码:

(while (not p)
(setq p (vl-catch-all-apply 'getpoint (list "请点击一点\nQ退出")))
(if (vl-catch-all-error-p p)
    (progn(setq p nil)(alert "你想退出吗?可以叫开发人员通过initget控制您使用Q代替esc"))
)
)
这一段代码就可以屏蔽用户的esc的错误行为

你有种再说一遍 发表于 2024-4-17 18:39:19

2024-4-17 06:36
1to2.arx...
lisp还嫌工程量大哦,那做一个lua和python不得疯了

我爱lisp 发表于 2024-9-5 15:11:51

你有种再说一遍 发表于 2024-4-15 16:42
用代码解决代码的事情,直接制作一个lisp编译器,
然后启动编译之后把函数名换成流水号...
还能直接把lisp ...

想多了,lisp编译为c++看看未来10年能不能行

你有种再说一遍 发表于 2024-9-5 19:04:42

我爱lisp 发表于 2024-9-5 15:11
想多了,lisp编译为c++看看未来10年能不能行

以前就行,还未来...你不会做就去看看LLVM

我爱lisp 发表于 2024-9-30 09:21:29

dcl1214 发表于 2024-4-15 09:35
set尽可能改成setq
例如:

这里好像没有写全,我尝试补充一下:(mapcar (function set (list 'a 'b) S)))) 好像不太明白

masterlong 发表于 2024-9-30 09:40:16

ssyfeng 发表于 2024-4-15 09:51
我也不喜欢用全局变量,不过很多用户喜欢记住上次操作的一些值,为下次命令启动时减少输入。所以有时也没 ...

字符、数字之类的值
可以用setcfg、getcfg来读取

kozmosovia 发表于 2024-9-30 14:53:09

要实打实抗反编译,就老老实实采取一些技术手段,单纯靠写代码习惯来抗反编译,精神胜利法
页: 1 2 [3]
查看完整版本: 关于良好代码习惯有助于编译fas以及程序稳定的讨论