본문 바로가기

학교48

CPL 3: Function Interpretation and Environments 목차 Environments Basic Functions Environments represent the bindings available at different locations. Environment = list of bindings Bind is a case class (ADT) Bind(name: String, value: Value) E.g. Environment = [Bind("x", NumV(3)), Bind("y", NumV(5))] Difference between maps: environments allow for duplicate keys → allow access to shadowed bindings 1. add() def add(myEnv: Environment, name: Str.. 2024. 3. 31.
Lecture 6: Environments and Scoping 목차 Learning Objectives - Explain what a "law" is - Explain how to verify that a programming language interpreter satisfies a law - Explain laws that uniquely characterize (simply-typed) functions What is a "Law"? An abstraction can be understood and defined independently of its underlying implementation Abstract definition = syntax + laws A law is an equation between two terms Example: → 왼쪽이 Syn.. 2024. 3. 29.
Lecture 5: Functions, Substitution and Environments 목차 Learning Objectives• Explain how function application works by substituting parameters for arguments • Execute simple programs involving lambdas • Explain what name shadowing and name capture is • Implement recursion using only lambdas • Explain how environments are delayed substitutions  Functions in ParetExamples  Syntax (Lab/Extended)  Example  Example   Function ApplicationParentheses aro.. 2024. 3. 28.
Lecture 10: Automated Negotiation 목차 Automated Negotiation Intelligent software agents negotiate on behalf of their users. How can a software agent negotiate its user's behalf? Evaluating bids: reasoning on its user's preferences Employing a negotiation strategy → Which action the agent will take → How the agent will generate its offer → When the agent will accept the opponent's counter offer Communicating with other agent(s) ba.. 2024. 3. 27.
반응형