Skip to content
/ PyDCI Public template

PyDCI is a production-ready Python implementation to get you going with the DCI paradigm.

License

Notifications You must be signed in to change notification settings

lygav/PyDCI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyDCI: Working with objects-in computer and mind

What is DCI

Most of what we call OO today is actually class-oriented programming. DCI is a new paradigm that brings programming to the level of everyday concepts and activities. With DCI we can return to real Object Oriented programming and writing systems of communicating objects.

The center of focus in DCI is the end users mental model. DCI specifies a program in two orthogonal projections. The DCI Data projection captures the information content of the mental model. The DCI Context projection captures its data processing properties. The main goal is to reify the model in readable code. Where readable means code that clearly exhibits the designers intent.

DCI main goals are:

Mental Models - To reflect the way different users conceptualize the objects of their world so that a program that feels like an extension of its user's mind.

Reasoning - To help software developers reason about system state and behaviour in addition to the state and behaviour of isolated objects.

Readability - To improve the readability of object-oriented code by giving system behaviour first-class status.

Revision - To cleanly separate code for rapidly changing system behaviour (what the system does) from code for slowly changing domain knowledge (what the system is), instead of combining both in one class hierarchy.
Finally, DCI can be embedded in different programming languages that are specialized for different purposes. The DCI concepts can become a unifying foundation for programming.

What is PyDCI

PyDCI is a Python implementation of DCI that gives you a framework to get you going with the DCI paradigm. Start writing DCI programs now!

PyDCI goals

PyDCI main goal is to provide a low-barrier, accessible means to experience,
and learn the revolutionary DCI paradigm while still maintaining a familiar environment.

It is designed to allow you to come close enough to full DCI to be able to
reap the huge benefits that DCI brings.

Find more about DCI : http://fulloo.info/

About

PyDCI is a production-ready Python implementation to get you going with the DCI paradigm.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages