Project
Project provides named, deferred targets. Declaring a target does not run its body. Selecting a target runs its dependencies first and executes a shared dependency once during that target resolution.
First example
import project
target prepare { print "prepare" }
target check depends [prepare] { assert 6 * 7 == 42 }
target application depends [prepare, check] { print "ready" }Selecting application runs prepare, then check, then the application body. The body is ordinary RecurLoop source and sees the project vocabulary. With an installed runtime, select it using recurloop --project recurloop.project.rl --target application.
Targets describe the execution workflow of your application.
Learning path
- Dependencies — Define the graph and its execution rules.
- Project paths — Resolve application paths consistently.
- Debugging — Prepare and select source or native debugging.