programmatic definition