Пример #1
0
#			  (List (Item "three"))))

## TODO: later: expand grammar
# S -> Cmd List "to" Item
# Cmd -> "delete"

############

t1 = Tree('List', [
    Tree('Item', [1]),
    Tree('List', [Tree('Item', [2]),
                  Tree('List', [Tree('Item', [3])])])
])

print(t1)
print(t1.flatten())

###########

# A slightly larger grammar
'''
S -> "copy" List "to" Item
S -> "delete" List
S -> "rename" Item "to" Item
List -> Item List | Item
'''

#(copy (List ...) to (Item ...))
#(copy (List f1 (List f2 (List f3))) to (Item folder))

# Tree('S', ['copy', Tree('List', [...]), to, Tree('Item', [...])])
Пример #2
0
## TODO: later: expand grammar
# S -> Cmd List "to" Item
# Cmd -> "delete"


############

t1 = Tree('List', [
	Tree('Item', [1]), 
	Tree('List', [
		Tree('Item', [2]),
		Tree('List', [Tree('Item', [3])])])])
		

print(t1)
print(t1.flatten())

###########

# A slightly larger grammar
'''
S -> "copy" List "to" Item
S -> "delete" List
S -> "rename" Item "to" Item
List -> Item List | Item
'''

#(copy (List ...) to (Item ...))
#(copy (List f1 (List f2 (List f3))) to (Item folder))

# Tree('S', ['copy', Tree('List', [...]), to, Tree('Item', [...])])