I'm curious how a part of Peter Norvig's Lisp interpreter works. One can define functions in this Lisp interpreter...how does this work? I'm a beginner, and just would like a simple explanation.
There's one part that might be related where it says
elif x[0] =开发者_开发百科= 'define': # (define var exp)
(_, var, exp) = x
http://norvig.com/lispy.html
In this case, x[0]
is define
, x[1]
is the variable name, and x[2]
is the expression. So, in Python, _, var, exp = x
is a "destructuring assignment", which destructures the array x
into its constituent elements, and assigns them to the variables on the left-hand side.
精彩评论