Procedural Scheduling & Constraints
Aerie allows users to write custom JVM procedures to check constraints or schedule new activities with complete freedom. Most users will choose to use Java, but since the libraries are written in Kotlin, they provide some quality-of-life improvements and syntactic sugar for those using Kotlin. Additionally, Kotlin's more intelligent type inference, null-safety, and currying syntax make writing peripheral procedures a more seamless experience, although the API is intended to work well with Java too.