I’m currently on a hiatus from submitting and giving conference talks. I might give another if I were explicitly invited to do so, but fortunately I haven’t had to face that scenario for a couple of years.

2014 Extracting a Goose from a Klein Bottle

The RacketCon keynote about learning, students, drowning in information, and Racket. Video available on YouTube

topics: racket, open source, learning

Venue RacketCon

2013 The Shape of Functional Programming

Visualizing functional programming and data transformations. video not available

topics: javascript, functional programming, underscore

Venue Devignition

2013 Zeder - Production Rule Systems in Clojure

Describes and demonstrates a production rules system written in Clojure used in a production simulation environment. Video available on YouTube

topics: production rules, clojure, functional programming

Venue Clojure/Conj 2013

2012 The Reemergence of Datalog

Datalog is a programming language derived from Prolog used for deductive rule definitions and queries. While certainly not a new concept, Datalog is uniquely positioned to serve as a query language for big data systems and as an embedded query language. In this talk I gave an overview of Datalog as a concept including its roots and costs/benefits over languages like Prolog and SQL. I also provided examples of how Datalog is implemented and used in Datomic, Dedalus, Cascalog, and the Bacwn Clojure library. Video available on InfoQ

topics: datalog, prolog, clojure, sql, java, dedalus, langdev, query, programming

Venue Emerging Languages

2012 ClojureScript Anatomy

A deep dive into the inner workings of ClojureScript’s analysis, compilation, and run-time phases. The talk focused specifically on the way that traditional JavaScript abstractions thwart code-size and efficiency and how ClojureScript avoids such pitfalls. Finally, I told a couple “war stories” about some of the specific challenges met by the Clojure/core team during the development of the compiler and run-time. view ClojureScript Anatomy on InfoQ

topics: clojurescript, compilation

Venue Clojure/West

2011 The Macronomicon

A dive into the arcane arts of macrology. Topics include: the basics of macros, the “times” of macros: macro-expansion, compile, and run times, hygiene, macro scoping (lexical and sub-lexical), my approach to writing macros and a case study on Trammel. view The Macronomicon on Blip.tv

topics: clojure, macros, trammel, contracts-programming, hygiene

Venue Clojure/conj

2011 Code as Data as Code

The many facets of data. video not available

topics: clojure, clojurescript, edn, data, sql, macros

Venue Devignition

2010 Naïveté vs. Experience

I discussed the use of Scala and Clojure in an ongoing software project. The talk included an anecdote about how each language was pitched to the software team composed of programmers with very little to no prior experience with functional programming. The actual Scala pitch was dissected and criticized and then distilled into a few general thoughts on how to make an effective functional language pitch. Video available on Vimeo

topics: clojure, fp, scala, oop

Venue CUFP

2010 Fertile Ground: The Roots of Clojure

I explored some of the programming language and paradigm influences on the Clojure programming language. Clojure contains its own novelty, but its greatest strengths are built on the foundation of existing language features. Video available on Blip.tv

topics: clojure, ml, prolog, clips, java

Venue Clojure/conj

Copyright 2012–2017 by Fogus
email me at me -at- fogus -dot- me to schedule a talk.