a tool for learning the calculus
play

A tool for learning the -calculus Edmund Horner - PowerPoint PPT Presentation

Introduction The -Calculus Explorer Summary A tool for learning the -calculus Edmund Horner edmund@mcs.vuw.ac.nz Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the -calculus Introduction The -Calculus Explorer Summary


  1. Introduction The λ -Calculus Explorer Summary A tool for learning the λ -calculus Edmund Horner edmund@mcs.vuw.ac.nz Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  2. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it Contributions The λ -Calculus Explorer: is a web-based e-learning tool supports learning the λ -calculus does β -reductions automatically to let students focus on more important concepts was designed, implemented and evaluated. Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  3. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it The λ -calculus The λ -calculus is: a fundamental theory of programming languages a primitive notation for functions (and nothing but functions) a clean model of how functions work in programming languages Hence it is useful , but it’s tricky to learn : very low level lots of syntax lots of mechanical term manipulation Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  4. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it Example Part of a typical λ -calculus exercise (show how to extract the first item from a pair): ( λ p . p ( λ x y . x ))(( λ a b z . z a b ) u v ) Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  5. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it Example Part of a typical λ -calculus exercise (show how to extract the first item from a pair): ( λ p . p ( λ x y . x ))(( λ a b z . z a b ) u v ) ( λ a b z . z a b ) u v ( λ x y . x ) → β Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  6. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it Example Part of a typical λ -calculus exercise (show how to extract the first item from a pair): ( λ p . p ( λ x y . x ))(( λ a b z . z a b ) u v ) ( λ a b z . z a b ) u v ( λ x y . x ) → β ( λ b z . z u b ) v ( λ x y . x ) → β Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  7. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it Example Part of a typical λ -calculus exercise (show how to extract the first item from a pair): ( λ p . p ( λ x y . x ))(( λ a b z . z a b ) u v ) ( λ a b z . z a b ) u v ( λ x y . x ) → β ( λ b z . z u b ) v ( λ x y . x ) → β ( λ z . z u v )( λ x y . x ) → β Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  8. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it Example Part of a typical λ -calculus exercise (show how to extract the first item from a pair): ( λ p . p ( λ x y . x ))(( λ a b z . z a b ) u v ) ( λ a b z . z a b ) u v ( λ x y . x ) → β ( λ b z . z u b ) v ( λ x y . x ) → β ( λ z . z u v )( λ x y . x ) → β ( λ x y . x ) u v → β Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  9. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it Example Part of a typical λ -calculus exercise (show how to extract the first item from a pair): ( λ p . p ( λ x y . x ))(( λ a b z . z a b ) u v ) ( λ a b z . z a b ) u v ( λ x y . x ) → β ( λ b z . z u b ) v ( λ x y . x ) → β ( λ z . z u v )( λ x y . x ) → β ( λ x y . x ) u v → β ( λ y . u ) v → β Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  10. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it Example Part of a typical λ -calculus exercise (show how to extract the first item from a pair): ( λ p . p ( λ x y . x ))(( λ a b z . z a b ) u v ) ( λ a b z . z a b ) u v ( λ x y . x ) → β ( λ b z . z u b ) v ( λ x y . x ) → β ( λ z . z u v )( λ x y . x ) → β ( λ x y . x ) u v → β ( λ y . u ) v → β u → β Eek! Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  11. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it What’s the problem? The process of β -reduction gets in the way of students learning the important bits. It’s tedious and error-prone But important concepts are built on top of it. Want a computer-based system that will aid learning, not replace it. Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  12. Introduction The λ -Calculus Explorer Summary Contributions The λ -calculus Learning it What’s the solution? The teaching and learning literature tells us about: levels of understanding when studying a subject a learning cycle that learners go through: Experience → Reflection → Abstraction → Testing → ... This project focuses on learning at the application level: using knowledge in new and concrete situations. It means entering the cycle at the experience stage. Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  13. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation The λ -Calculus Explorer Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  14. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Example, revisited Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  15. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Example, revisited Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  16. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Example, revisited Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  17. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Example, revisited Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  18. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Example, revisited Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  19. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Example, revisited Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  20. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Example, revisited Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  21. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Implementation Implemented using JavaScript and PHP . Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  22. Introduction The λ -Calculus Explorer Summary Design In action Implementation Evaluation Evaluation Pilot experiment to assess it as a learning tool: Six volunteers completed worksheets using the λ -Calculus Explorer. Results: General reaction was positive But there were some limitations with the representation of data types. Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

  23. Introduction The λ -Calculus Explorer Summary Summary Summary The λ -Calculus Explorer: is a web-based e-learning tool supports learning the λ -calculus does β -reductions automatically to let students focus on more important concepts was designed, implemented and evaluated and is now online at: http://www.mcs.vuw.ac.nz/~edmund/lambda Edmund Horner edmund@mcs.vuw.ac.nz A tool for learning the λ -calculus

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend