我目前正在尝试使用静态类型系统实现类型分析器,该系统使用OCaml语言实现。
我使用的算法是首先生成类型方程,然后用统一算法求解这些方程。除了递归的letrec-exp绑定类型之外,我已经能够很好地实现代码。
以下是完整代码
type program = exp
and exp =
| NUM of int
| VAR of var
| SUM of exp * exp
| DIFF of exp * exp
| MULT of exp * exp
| DIV of exp * exp
| ZERO of exp
| IF of exp * exp * exp
我试图通过WebSphere自由配置文件通过IntelliJ调试一个远程应用程序。
我能够在我自己的代码中设置断点--在空白处出现带有复选标记的断点,并且工作正常。
不过,我遇到的具体问题是如何使用java.io.ObjectInputStream。当我在流上调用readObject()时,它会抛出一个异常。不过,我想知道更多关于流中哪一部分不好的信息,因此我正确地单击了readObject()并选择了Go To > Implementation,并试图在此方法中设置几个断点。
当我运行调试器时,这些断点通过断点(而不是检查点)显示,该消息显示在工具提示中:
Warning: No ex
我正在将一些Java代码转换为Javascript,以便在node.js上运行,并且遇到了一些特殊的东西--位移位。
最初的Java使用了长时间的逻辑位移位,所以我在Javascript中复制了这一点(我通过算术移位得到了相同的结果):
var num = 3382;
num >>> 0 & 0xFF; // 54, as expected
num >>> 8 & 0xFF; // 13, as expected
num >>> 16 & 0xFF; // 0, as expected
num >>&g