MCPcopy Index your code
hub / github.com/fluentpython/example-code-2e / Procedure

Class Procedure

18-with-match/lispy/py3.10/lis.py:176–191  ·  view source on GitHub ↗

A user-defined Scheme procedure.

Source from the content-addressed store, hash-verified

174
175# tag::PROCEDURE[]
176class Procedure:
177 "A user-defined Scheme procedure."
178
179 def __init__( # <1>
180 self, parms: list[Symbol], body: list[Expression], env: Environment
181 ):
182 self.parms = parms # <2>
183 self.body = body
184 self.env = env
185
186 def __call__(self, *args: Expression) -> Any: # <3>
187 local_env = dict(zip(self.parms, args)) # <4>
188 env = Environment(local_env, self.env) # <5>
189 for exp in self.body: # <6>
190 result = evaluate(exp, env)
191 return result # <7>
192# end::PROCEDURE[]
193
194

Callers 1

evaluateFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected