通常,我会使用::
原语:
SomeVariable"_ :: ] DefaultValue
我正在寻找一种方法来包装那个丑陋的SOB。我试图推理它。通常,它将具有默认的定义。例如:
default =: 13 : 'x"_ :: ] y'
悲惨地失败了。因为,当然,在这种背景下:
SomeVariable default DefaultValue
如果SomeVariable不存在,J将抛出效价错误。
那么,你如何包装::
?
答案 0 :(得分:2)
你确实可以包装::但如果你想给它一个动词参数,你需要处理句法问题。
例如,您可以使用副词:
fault=:1 :0
u"_ :: ]
)
或者你可以将你操纵的动词转换为动名词然后传入(但那会很难看,所以我认为你不想这样)。
答案 1 :(得分:0)
我用,
ORdef_z_ =: ".@[^:(_1< 4!:0@<@[)
'asd' ORdef 3 NB. asd not assigned, returns right.
3
asd =. 'asd' ORdef 3
asd=.'asd' ORdef 22 NB. will return 3 due to previous assignment
asd
3