The philosophy and architecture of Y-based systems.

Why Y

Y is a response to the complexity of content-management systems such as Drupal, and to the complexity of the programming languages such as PHP underlying them. It is an attempt to strip away code in favor of structured data that defines concepts and implementations. Y moves away from programming in favor of dynamic data architecture.

Whereas most conventional programming languages embed and use data in code, Y encourages the use of triplets for accessing data and of data-templating to structure and manipulate that data regularly and, secondarily, to embed logical constructs within the data to give it a dynamic nature.

Y also provides a powerful library of utilities to search and manipulate data, to create and access lists, to make layouts, and to work with high-order data structures such as Drupal entities.

Y has been developed for YAD7 & Drupal 7 because these are a open-source content-management engines that largely get configured with data arrays. Because Y is data-centric rather than object-centric, YAD7 / Drupal 7 provides a near-perfect Petri dish to incubate the Y project. Drupal 8 and above are not as well-suited to the Y concept