RosettaCodeData/Task/Singly-linked-list-Traversal/Phix/singly-linked-list-traversal.phix
2017-09-25 22:28:19 +02:00

23 lines
442 B
Text

enum NEXT,DATA
constant empty_sll = {{1}}
sequence sll = empty_sll
procedure insert_after(object data, integer pos=length(sll))
sll = append(sll,{sll[pos][NEXT],data})
sll[pos][NEXT] = length(sll)
end procedure
insert_after("ONE")
insert_after("TWO")
insert_after("THREE")
?sll
procedure show()
integer idx = sll[1][NEXT]
while idx!=1 do
?sll[idx][DATA]
idx = sll[idx][NEXT]
end while
end procedure
show()