Click here to Skip to main content
Licence 
First Posted 19 Nov 2007
Views 12,946
Bookmarked 9 times

Theosophy Oriented Programming

By | 19 Nov 2007 | Article
An introductory article on theosophy oriented programming (T.O.P.)

Table of Contents

Preface

Theosophy Oriented Programming (T.O.P.) is based on human nature. In human nature we have a unique main creator 'God'. All of us are God's creatures. We are able to create many things, so we too are creators. But there are some differences between us and our God, for example, God can kill us and so on.

Theosophy Oriented Programming

Any piece of software is a world so it must have one main creator and some creatures. Some creatures are creators but they are not the main creator because a world can have only one main creator.

In this kind of programming we have some creatures and creators and one main creator:

1-Main Creator

The main creator is the strongest creature in a world. He/she can create any creature and set creature properties, functions and reactions. He can also kill his creature, or his creature's offspring. Creatures can improve their power by inheriting properties of the main creator, and even functions and reactions if the main creator permits.

2-Creator

A creator can be created by the main creator or any other creatures. A creator can create creatures with different types. For example, in our nature, God can create humans and animals that are not the same.

3-Creature

A creature cannot ignore his/her creator's rules unless he/she permits him/her. A creature can be a creator if his creator allows it. A creature can also inherit his creator's properties, functions and reactions if his creator allows.

In this version of T.O.P. all creatures, creators and main creators have three sections. These sections are: Properties, Functions and Reactions:

1-Properties

Every creature has properties. For example, your weight is one of your properties. We have three types of properties:
Personal Properties belong to you only, such as your hand writing.
Inherited Properties that you inherited from your creator which your creator may or may not have changed, for example, you inherited your eye color from your parents.
Innate Limitation that is created with your creator, for example, if you are born blind. Maybe your creator has a reason for your innate limitation.

2-Functions

All of us have one or more job. We try to have a useful role in our society by doing our work. Functions in T.O.P. are like our jobs in our life. Creatures obtain all their creator goals by doing their functions well.

3-Reactions

When you are tired, you go to bed and rest. Going to bed is a reaction in response to be tired. In T.O.P. programming reactions are like events in Object Oriented Programming but with more beautiful meanings. For example OnClick() can be a reaction for creatures like Button (In object oriented programming, Button is an object and Onclick() is an event for this object).

Screenshot - image012.jpg
Figure 1-Creator & Creatures

A Scenario for Theosophy Oriented Programming

Assume that God creates two kind of creatures: 'Humans' & 'Animals'. Humans create two kind of humans: 'Computer Programmer' & 'Car seller'. Computer programmers can create software and car sellers can ceate cars so computer programmers and car sellers are creators of cars and software. In this scenario God is the main creator, humans and animals are the first creatures, and software and cars are the latest creatures. All of these creatures have their own functions, reactions and properties. (Please look at the Figure 2).

Screenshot - image010.png
Screenshot - image011.png
Figure 2-World Life Cycle

Now it is good to write some code in T.O.P.. Here I write all the codes needed for creating a world with two types of first creatures, human and animals and their creatures, car sellers and software programmers, and cars and software.

01 Creator God
02 {    Creature Human
03     { Properties 
04         Color eye color, skin color;
05         Integer height, weight;;
06         Can Create any Creature=true;
07         Reactions 
08         On bore () {//Go to bed and rest.}
09         On hungry () {//Make food or go to restaurant.}
10         Creatures 
11         Creature Computer Programmer
12         {    Properties 
13              God.Human.Car Seller. Car Personal Car;
14              Inherit all personal properties of his creature=true;
15              Can Create any Creature=true;
16              Functions 
17              Software Design Program(Your ideal program detail );
18              Reactions 
19              Inherit all reactions of his creature=true;
20              Creatures 
21              Creature Software
22              {    Properties 
23                   Integer Size of Software;
24                   Can Create any Creature=false;
25                   Functions 
26                   ideal data type Solving Your Problem (ideal parameters);
27              }
28         }
29         Creature Car Seller
30         {    Properties 
31              Inherit all personal properties of his creature=true;
32              Can Create any Creature=true;
33              Functions 
34              Car Sell Car(Your ideal program detail );
35              Reactions 36 Inherit all reactions of his creature=true;
37              Creatures 38 Creature Car
39              {    Properties 
40                   Integer Number of wheels;
41                   Color Car Color;
42                   Can Create any Creature=false;
43                   Functions 
44                   ideal data type Moving to where you want (
                         ideal parameters);
45              }
46         }
47     }
48 }

We declare main creator with Creator keyword and declare all other creators and creatures with the Creatures keyword.

So far, we have designed a world but life doesn't exist in this world. We start the life cycle by creating creatures and giving souls to their bodies. Here I is the code for starting the life cycle:

01 Start Life Cycle()
02 {    Create God.Human.Computer Programmer Bill Gates;
03      Create God.Human.Car Seller Alex;
04      Bill Gates. Personal car=Alex. Sell Car (ideal parameters);
05      //Now Bill Gates has a car.
06      God. Kill All Creatures();
07 }
08 End of Life Cycle;

The life cycle starts by calling Start Life Cycle(). Then two men with the names "Bill Gates" and "Alex" are created. Bill Gates is a software programmer and Alex is a car seller. One day Bill gates goes to Alex's store and orders a car. Alex sends Bill's ideal parameters to sell car() and this function creates an ideal car for Bill Gates by setting the properties of this car according to Bill's ideal parameters. Now Bill Gates has a car. After that, it is time to end the life cycle so we call God. Kill All Creatures ().

Theosophy Oriented Programming is the Best Type of Programming

Easy to Learn

T.O.P. is easy to learn because it acts exactly like nature in the real world and all of us know our nature. Everything we need for learning T.O.P is to think about yourself and human nature.

Easy to Solve Programming Problems

We can solve all programming problems like inheritance problems by thinking about human inheritance and thinking about God, creatures, creators and their relationships.

Easy to Develop

Developing a hierarchy is exactly like a human hierarchy (=human offspring). Your grandfather, your father and you are a good example of a human hierarchy (or in other words human developing), so developing previous software is like human developing. If we have a problem in our human hierarchy, we have a problem in T.O.P too.

In the Future

Here I describe a few features of T.O.P . I am ready to work with anyone who is ready to complete and promote this kind of programming.

Summary

Human nature is a perfect structure, therefore things based on it are perfect. T.O.P is based on human nature so we must try to promote it.

Thank you for reading my article.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

farhad2161

Web Developer

Iran (Islamic Republic Of) Iran (Islamic Republic Of)

Member



Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
JokeProgrammers are tiny gods. PinmemberRichard Minerich13:11 7 Mar '09  
Generalnice Pinmemberradioman.lt@gmail.com21:11 19 Nov '07  
GeneralIt's magic, but stay on the ground! Pinmember_Stephan19:12 19 Nov '07  
GeneralOh dear... PinmemberFred_Smith13:21 19 Nov '07  
GeneralMonthly competition winner PinmemberZoltan Balazs12:37 19 Nov '07  
Generalphilosophy Pinmemberspacemonk3y11:20 19 Nov '07  
GeneralOoooooh. Line Numbers in Code. PinmemberChris Meech11:07 19 Nov '07  
GeneralCP needs a humor section PinmemberTodd Smith10:34 19 Nov '07  
GeneralYou're high. Pinmemberstevekain9:47 19 Nov '07  
GeneralRe: You're high. PinmemberBigTuna10:03 19 Nov '07  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web02 | 2.5.120517.1 | Last Updated 19 Nov 2007
Article Copyright 2007 by farhad2161
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid