Я написал DSL для планирования в Scala под названием foil , который свободно доступен на Github. Он будет работать либо с Java Calendar / Date, либо с библиотекой Joda. Синтаксис выглядит так:
schedule(f) now
schedule(f) onceAfter 5.minutes
schedule(f) onceAt inst
schedule(f) onceAtNext time
schedule(f) todayNoEarlierThan time
Где f - замыкание (т.е. () => Unit
). Есть еще много примеров в Wiki и пример сеанса REPL с фольгой, показывающий, как его использовать (как с Java Date / Calendar, так и с JODA).