我一直在尝试,SALT
但遇到Load
了似乎只影响原始功能训练的一致问题。我希望有任何关于确保所有功能Load
正确的建议。
为了说明,在一个清晰的工作区中,我将创建一些用于转换十六进制和八进制的示例函数。有些是 dfns,有些是原始火车:
FromOct←8⊥⊢
ToOct←(FromOct⍣¯1)
FromHex←{16⊥⍵}
ToHex←{((16⊥⊢)⍣¯1)⍵}
HexToOct←ToOct FromHex
初始盐状态:
⎕SE.SALT.List '/path/to/salt'
Type Name Versions Size Last Update
然后Snap
工作区:
⎕SE.SALT.Snap '/path/to/salt -clean -loadfn'
** WARNING: ⎕LX is empty
#.FromHex #.FromOct #.HexToOct #.ToHex #.ToOct
⎕SE.SALT.List '/path/to/salt -type'
Type Name Versions Size Last Update
Fn FromHex 25 2021/05/18 17:08:32
Fn FromOct 25 2021/05/18 17:08:32
Fn HexToOct 46 2021/05/18 17:08:32
Fn ToHex 36 2021/05/18 17:08:32
Fn ToOct 31 2021/05/18 17:08:32
Fn load_ws 537 2021/05/18 17:08:32
并检查load_ws
函数正在导入什么:
⎕CMD 'cat /path/to/salt/load_ws.dyalog | grep "^ Load''"'
Load'"/path/to/salt/FromHex" -target=#' â #.FromHex
Load'"/path/to/salt/FromOct" -target=#' â #.FromOct
Load'"/path/to/salt/HexToOct" -target=#' â #.HexToOct
Load'"/path/to/salt/ToHex" -target=#' â #.ToHex
Load'"/path/to/salt/ToOct" -target=#' â #.ToOct
在一个清晰的工作区中,运行load_ws
:
⎕SE.SALT.Load '/path/to/salt/load_ws'
load_ws
*** could not fix "/path/to/salt/FromOct.dyalog"
*** could not fix "/path/to/salt/HexToOct.dyalog"
*** could not fix "/path/to/salt/ToOct.dyalog"
dfns 加载正常,火车失败。
一个现成的解决方法是使用 tradfns 或 dfns 进行包装,但这是非常不可取的。
关于让 SALT 正确加载这些功能的任何想法?
谢谢