My existing research is mainly focused on lightweight generic programming techniques and the essence of (OO-style) design patterns. * Modular Visitor Components: A Practical Solution to the Expression Families Problem Bruno C. d. S. Oliveira ECOOP 2009. * Scala for Generic Programmers Bruno C. d. S. Oliveira, Jeremy Gibbons In Ralf Hinze, editor, Proceedings of the ACM SIGPLAN Workshop on Generic Programming (WGP'08) July 2008. * Objects to Unify Type Classes and GADTs Bruno C. d. S. Oliveira, Martin Sulzmann ICFP 2008
Buildr is a build system for Java applications in Ruby Maven compatible * A simple way to specify projects, and build large projects out of smaller sub-projects. * Pre-canned tasks that require the least amount of configuration, keeping the build script DRY and simple. * Compiling, copying and filtering resources, JUnit/TestNG test cases, APT source code generation, Javadoc etc * A dependency mechanism that only builds what has changed since the last release. * A drop-in replacement for Maven 2.0, Buildr uses the same file layout, artifact specifications, local and remote repositories. * All your Ant tasks belong to us! Anything you can do with Ant, you can do with Buildr. * No overhead for building “plugins” or configuration. Just write new tasks or functions. * Buildr is Ruby all the way down. No one-off task is too demanding when you write code using variables, functions and objects. * Simple to upgrade to new versions. * fast