Search destructured
In a previous post we had this pseudo code for looking for an item in the dictionary:
# We are looking for an entry with key KEY
item := LATEST
while item <> NULL:
if item.key == KEY: return value
else: item := item.LINK
# item not found
Let’s start to transform this into a destructured version.
# We are looking for an entry with key KEY
item := LATEST
BZ item, done
while:
if item.key == KEY:
return value
JMP done
else:
LD item, *(item + LINK)
JMP while
done:
# item not found