The Bay Area Functional Programmers meet to discuss functional programming somewhere in the San Francisco Bay area somewhat regularly.
JavaScript is the world’s most misunderstood programming language. It is the most popular programming language in the world, while at the same time being one of the least liked. In JavaScript there is a beautiful, highly expressive language that is buried under a steaming pile of good intentions and blunders. The best nature of JavaScript was so effectively hidden that for many years the prevailing opinion of JavaScript was that it was an unsightly, incompetent abomination. JavaScript is a fun...
Yahoo is no stranger to functional programming languages. It has had significant products in languages like Lisp and Scheme. Somehow Erlang, and other function languages, are often overlooked when most developers are researching various problems and systems. This is very unfortunate given the power and flexibility that these languages provide. At Yahoo there are places where functional languages and make a phenomenal difference in the way problems and solutions are approached. This presentatio...
Speaker: David Pollak, Lift Web FrameworkAbstract: I will discuss the functional programing paradigms that we used to build Buy a Feature, a multi-user, web-based, real-time, serious game. These paradigms include Actors to manage concurrency, event streams as the sole mechanism for gameplay, and various immutable data structures that are composed based on the event streams. I will also briefly touch on the Scala programming language and lift web framework. I will then discuss the experience of...
The web is raising the bar for expected application features and reactivity is one common theme. Thick clients are again becoming the norm, further hinting at the form reactivity takes and guiding our choice in how to support it. For these reasons, data binding is a popular feature, yet bound terms are often neither first-class citizens nor higher-order. To further help untangle typical reactive web client code by facilitating compositional reasoning for events and changing data, we created th...
Bryan is a co-author of the upcoming O’Reilly book Real World Haskell. (among all sorts of other snazzy endeavors).About Bay Area Functional Programmers: BayFP meets monthly with talks on functional programming. Slides and videos from previous talks are available at http://bayfp.org/blog/. The group mailing list is http://groups.google.com/group/bayfp/.
Twelf is a proof assistant and programming language based on typed logic programming.It is full of interesting and beautiful ideas. I’m going to use Twelf as a jumping-off point to talk about some of those ideas: judgments and inference rules; proof search and logic programming; proofs as programs; dependent types; higher-order abstract syntax. I won’t go too deep into the technicalities of Twelf but I’ll try to explain why Twelf is interesting in comparison with other proof assistants like Co...
Extractions are a way to harness the conciseness of pattern matching known from functional programming with the versatility of object-oriented progamming. They are user-definable patterns which can match and deconstruct any data into subcomponents, without imposing constraints on the way data is defined. The flexibility comes at a price though, since user-defined code cannot be optimized as well as hardwired pattern matching logic. In this talk, I will describe how extractions are used in Scal...
David Pollak presented lift on November 11th, 2007 at the Bay Area Functional Programmers meeting @ the Carnegie Institution, Stanford, CA. His slides and a description are available here.
Alex Jacobson presented on HAppS: Haskell's High Availablity Application Server at the October 11th, 2007, Bay Area Functional Programmers meeting @ PowerSet. His slides and a description are available here.