我在Chicken Scheme中有一个哈希表,哈希表的键对应的值是具有相应哈希值的哈希,而这些哈希又具有相应哈希值的值。 "内部哈希"的键具有相应的字符串值。(对于那些熟悉Ruby的人来说,设置哈希表的相关部分可能看起来像)
the_hash[group_name][section_name][part_name] = some_text
或者读取字符串:
a_string = the_hash[group_name][section_name][part_name]
当我读取字符串时,我需要知道group_name
、section_name
和part_name
是什么,并且我需要能够根据每个字符串的值执行某些操作,而Scheme的for-each
和map
特性似乎不足以实现这一点,因为在任何给定的时刻只有三个键/子键字符串中的一个似乎是可用的。我不知道各自的字符串可能具有什么模式。网络搜索没有找到可行的解决方案。同时,我对Scheme相对较新,可能不如应该熟悉。有人可以指引我解决方案的方向吗?
(multi-hash-ref the_hash group_name section_name part_name)
。在我的Scheme解释器中,foldl
中lambda
的参数是:(current-element, accumulated-value)
,所以这对我很有效。如果在Chicken Scheme中不是这种情况,请反转它们。 - Óscar López