Sample Ad Advertise your business on myplick. Only $2.00 a month.
Comments:
Notes:
Slide 1: First fun in the afternoon
Nik Sultana
30 Nov 2006 Functional Programming Group Seminar
Slide 2: “Fun in the afternoon”
The event
• • • • To be held periodically (3 times/year) Informal half-day event FP-related themes Mostly academic institutions were represented • Changing venues: To be held in Nottingham next, then Cambridge
30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 3: “Fun in the afternoon”
Presentations
• Phil Wadler (University of Edinburgh) Links: web programming without tiers • James Cheney (University of Edinburgh) Mechanised Metatheory Model-Checking • Wouter Swierstra (University of Nottingham) A Principled Approach to Version Control • Andrew Kennedy (Microsoft Research, Cambridge) C# is a functional programming language
30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 4: “Fun in the afternoon”
Links: web programming without tiers ~ P.Wadler
• One fun language for web programming, instead of 2+ • Translation into target language • Environment-specific functions
30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 5: Source: Wadler’s slides 30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 6: Source: Wadler’s slides 30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 7: “Fun in the afternoon”
Mechanised Metatheory ModelChecking ~ J.Cheney
• Partial verification of inferences • Checking theories for soundness • Significant complexity issues
30 Nov 2006
N.Sultana Functional Programming Group Seminar
Slide 8: Cheney: Example
Source: Cheney’s slides 30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 9: Cheney: Example (ctd.)
Source: Cheney’s slides 30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 10: “Fun in the afternoon”
A Principled Approach to Version Control ~ W.Swierstra
• Giving distributed version control the formal treatment, goal: predictable vc tools • General enough theory to describe family of VC systems, including darcs • Formalising “patch” and “repository”, building on to conflict resolution
30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 11: A theory of patches
• Patch = Sā E →T • create f = Øā {f = c | c \in Bits} → {f = ε} • Definitions for repository, patch application, patch composition, conflicts… • Still to provide algorithms for conflict resolution. Formalisation very abstract.
30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 12: “Fun in the afternoon”
C# is a functional programming language ~ A.Kennedy
• Claim: Successive versions of C# increasingly accommodate functional paradigm • C# 3.0 will support type inference and lambda expressions. • “It’s functional programming bolted onto a determinedly imperative object-oriented language” (Source: Kennedy’s slides)
30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 13: “Fun in the afternoon”
Theme roundup
• Theoretical
– Metatheory verification
• Applied
– Web Programming – Version control – FP ideas enmeshed with other paradigms
30 Nov 2006 N.Sultana Functional Programming Group Seminar
Slide 14: “Fun in the afternoon”
Emphasised FP goals
• Web Programming, distributed systems, multi-core programming • Handling large software development • Verification
30 Nov 2006
N.Sultana Functional Programming Group Seminar