我今天找到了一个错误,最终导致我的代码中的某个代码片段(我试图仅在列表中过滤"PRIMARY KEY"约束):
(filter #(= (% :constraint_type "PRIMARY KEY")) aListOfconstraints)
Run Code Online (Sandbox Code Playgroud)
而不是正确的:
(filter #(= (% :constraint_type) "PRIMARY KEY") aListOfconstraints)
Run Code Online (Sandbox Code Playgroud)
即错误是地图采用默认参数的组合效果,以防万一找不到密钥,如:
({:a 1 :b 2} :a 0)
Run Code Online (Sandbox Code Playgroud)
......以及只接受一个参数并返回true的相等函数:
(= 1) ; evals to true
Run Code Online (Sandbox Code Playgroud)
我是否可以使用任何工具来促使我使用这种有效但可疑的代码?或者也许是一些我不知道的最佳实践?