A̵d̵v̵a̵n̵c̵e̵d̵ ̵F̵u̵n̵c̵t̵i̵o̵n̵a̵l̵ Compiler Programming for OO/Java Developers, Appendix A: DSL Parser Generation Using JavaCC and Syntactic Sugar

I’ve run a series of posts on functional programming for Java developers, and had actually planned to stop it at part 4, but it turns out I still have (a bit) more to say, so here’s a small appendix (and there’s likely a fifth part coming as well sometime). The first four parts introduced various […]

Read More…

Advanced Functional Programming for OO/Java Developers, Part 4: Conditionals, Recursive Functions (Featuring Fancy Fixpoints), Accumulators, and Tail Recursion

This is the fourth and last part in a series of posts introducing functional concepts to OO/Java developers. The first three parts introduced visitors, functional data types, and increasingly sophisticated and powerful continuations. We have used a running example of expression evaluation to illustrate the concepts. In the previous part we set up our expression […]

Read More…

Advanced Functional Programming for OO/Java Developers, Part 3: Syntactic Sugar, JIT-Compiling, and even More Advanced Continuation Use

This is the third part of a series of posts introducing principles from functional programming to OO developers, primarily using Java. In the first two parts, we covered the visitor pattern and basic use of continuations, as well as functional data structures and more advanced use of continuations. We used a basic example of expression […]

Read More…

Advanced Functional Programming for OO/Java Developers, Part 2: Functional Data Structures & More Advanced Continuations

This is the second part of a series of posts introducing functional programming principles to OO developers. In the first part, we looked at two design patterns that are less common in the OO world and more common in the functional world, namely the visitor design pattern and the continuation passing style design pattern. These […]

Read More…

Advanced Functional Programming for OO/Java Developers, Part 1: Visitors & Continuations

A couple of weeks ago, a colleague and I were working on an application that needed to traverse a simple AST. The code came with a bundled visitor for performing the traversal and we needed to transform a simple decision tree model to BPMN using a builder. The implementation was second nature, but left my […]

Read More…

Where in Spacetime is Carmen Sandiego?

For HealthKPI‘s location features I need to deal with large(ish) quantities of spatio-temporal data. Basically, I have a bunch of time series with health data, and each data point has an attached location. Presently, I have around 10000 data points in my manually registered database, and I expect that number to only go up once […]

Read More…