Abstract

This paper presents a new programming paradigm named Notification-Oriented Paradigm (NOP) and analyses the performance aspects of NOP programs by means of an experiment. NOP provides a new manner to conceive, structure, and execute software, which would allow causal-knowledge organization and decoupling better than standard solutions based upon current paradigms. These paradigms are essentially Imperative Paradigm (IP) and Declarative Paradigm (DP). In short, DP solutions are considered easier to use than IP solutions due to the concept of high-level programming. However, they are considered slower in execution and lesser flexible in development. Anyway, both paradigms present similar drawbacks such as redundant causal-evaluation and strongly coupled entities, which decrease software performance and processing distribution feasibility. These problems exist due to an orientation to a monolithic inference mechanism based on sequential evaluation searching on passive computational entities. NOP proposes another way to structure software and make its inferences, which is based on small, collaborative, and decoupled computational entities whose interaction happens through precise notifications. This paper presents a quantitative comparison between two equivalent implementations of a sale system, one developed according to the principles of Object-Oriented Paradigm (OOP/IP) in C++ and other developed according to the principles of NOP based on a NOP framework in C++. The results showed that NOP implementation obtained quite equivalent results with respect to OOP implementation. This happened because the NOP framework uses considerable expensive data-structures over C++. Thus, it is necessary a new compiler to NOP in order to actually use its potentiality.

Highlights

  • This section mentions the drawbacks of the main programming paradigms, introduces a new paradigm, and presents the paper objectives.1.1

  • This paper presents a quantitative comparison between two equivalent implementations of a sale system, one developed according to the principles of Object-Oriented Paradigm (OOP/Imperative Paradigm (IP)) in C++ and other developed according to the principles of Notification Oriented Paradigm (NOP) based on a NOP framework in C++

  • In order to make some comparisons between NOP and Object-Oriented Paradigm (OOP), this paper presents a Sale Order System as case of study

Read more

Summary

Review Stage

The computational processing power has grown each year and the tendency is that technology evolution contributes to the creation of still faster processing technologies [1,2] Even if this scenario is positive in terms of pure technology evolution, in general it does not motivate information-technology professionals to optimize the use of processing resources when they develop software [1,3]. Distribution is itself a problem once, under different conditions, it could entail a set of (related) problems, such as complex load balancing, communication excess, and hard fine-grained distribution [1,4,13,14,17] In this context, a problem arises from the fact usual programming languages (e.g. Pascal, C/C++, and Java) present no real facilities to develop optimized and really distributable code, in terms of fine-grained decoupling of code [1,3,4,17,18]. This happens due to the structure and execution nature imposed by their paradigms [1,7,9]

Imperative and Declarative Programming
Paper Context and Objective
Imperative Programming Issues
Imperative Programming Distribution
Imperative Programming Development
Declarative Programming Issues
Other Programming Approach Drawbacks
Enhancement in Programming
NOP Structural View
NOP Inference Process
NOP-Redundancy Avoidance—Performance
NOP—Decoupling and Distribution
NOP Originality
NOP Implementation
The Sale Order System
Sale Order System
Implementation Details
First Experiments and Results
Second Experiments and Results
Third Experiment and Results
Considerations
Notification Oriented Paradigm Features
NOP Performance

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.