A methodology turned into a language. Good OOP becomes natural, not accidental.
Clprolf adds a conceptual layer on top of Java/C#/PHP: roles, contracts, and design rules are first-class keywords. You model systems with agents, worker agents, versions, and capacities, while the compiler enforces clarity.
If you clone the repository and find value in the project, please consider giving it a ⭐.
Clprolf is not intended as a mainstream replacement for Java or other general-purpose languages.
It is designed for:
Clprolf introduces explicit structural constraints through predefined roles and natures. These constraints are intentional and form part of the language’s philosophy.
Developers who prefer unrestricted class modeling and complete architectural freedom may find traditional object-oriented languages more suitable.
Clprolf is intended for contexts where early architectural control and long-term coherence are primary objectives.
one_at_a_time, turn_monitor, etc.agent, worker_agent, model) explain themselvespublic class_for agent OrderService {
with_compat OrderRepository repo;
void checkout(Order o) { repo.save(o); }
}
agent, worker_agent, model, information, indef_objlong_action, one_at_a_time, dependent_activityWorks two ways:
👉 With Clprolf, your code doesn’t just run — it explains itself.
Clprolf is based on two core principles:
These principles define how Clprolf structures components and relationships.
The class domain is the central subject around which a class is organized. It defines what the class fundamentally represents and what it is responsible for.
For example:
File class has a class domain related to file handling.Random class has a class domain related to random generation.Connection class has a class domain related to connection management.PdfGenerator class has a class domain related to PDF generation.A technical class, by contrast, does not represent a conceptual domain. It provides technical support (e.g., logging, parsing, low-level utilities).