scholarly journals A New Modern Object-Oriented Programming Languages

Author(s):  
Prof. Shilpa Shitole ◽  
Rohit Maurya ◽  
Tanaya Pawar ◽  
Siya Randhe

Industries evolve. Our thinking changes as well. Programming languages need evolvement too. “The thing is that ideas for new features with its ways of thinking will be flourished, and so perfectly designed those languages won’t be perfect anymore.” Where did logical programming go? “Notice that you can use this paradigm and just provide a set of constraints for a website and expect the website to develop automatically based on them.” It is possible to implement that. Likewise, new paradigms will sooner or later be born. It can’t be that we’ve explored everything. “Technologies are born likewise the old way of thinking, which represents by the previous programming languages might not be adequate. This project is an open-source modern object-oriented programming language that aims to bridge the gap between modern expressive programming paradigms like python and strictly typed rigid languages like Java and C#. Our goal is to provide the usefulness of an object-oriented programming language while holding the simplicity of an expressive programming language without having to sacrifice performance.

2021 ◽  
Author(s):  
◽  
Frank Schmager

<p>GO is a new object-oriented programming language developed at Google by Rob Pike, Ken Thompson, and others. GO has the potential to become a major programming language. GO deserves an evaluation.  Design patterns document reoccurring problems and their solutions. The problems presented are programming language independent. Their solutions, however, are dependent on features programming languages provide. In this thesis we use design patterns to evaluate GO. We discuss GO features that help or hinder implementing design patterns, and present a pattern catalogue of all 23 Gang-of-Four design patterns with GO specific solutions. Furthermore, we present GoHotDraw, a GO port of the pattern dense drawing application framework JHotDraw. We discuss design and implementation differences between the two frameworks with regards to GO.</p>


1994 ◽  
Vol 4 (2) ◽  
pp. 127-206 ◽  
Author(s):  
Kim B. Bruce

AbstractTo illuminate the fundamental concepts involved in object-oriented programming languages, we describe the design of TOOPL, a paradigmatic, statically-typed, functional, object-oriented programming language which supports classes, objects, methods, hidden instance variables, subtypes and inheritance.It has proven to be quite difficult to design such a language which has a secure type system. A particular problem with statically type checking object-oriented languages is designing typechecking rules which ensure that methods provided in a superclass will continue to be type correct when inherited in a subclass. The type-checking rules for TOOPL have this feature, enabling library suppliers to provide only the interfaces of classes with actual executable code, while still allowing users to safely create subclasses. To achieve greater expressibility while retaining type-safety, we choose to separate the inheritance and subtyping hierarchy in the language.The design of TOOPL has been guided by an analysis of the semantics of the language, which is given in terms of a model of the F-bounded second-order lambda calculus with fixed points at both the element and type level. This semantics supports the language design by providing a means to prove that the type-checking rules are sound, thus guaranteeing that the language is type-safe.While the semantics of our language is rather complex, involving fixed points at both the element and type level, we believe that this reflects the inherent complexity of the basic features of object-oriented programming languages. Particularly complex features include the implicit recursion inherent in the use of the keyword, self, to refer to the current object, and its corresponding type, MyType. The notions of subclass and inheritance introduce the greatest semantic complexities, whereas the notion of subtype is more straightforward to deal with. Our semantic investigations lead us to recommend caution in the use of inheritance, since small changes to method definitions in subclasses can result in major changes to the meanings of the other methods of the class.


Author(s):  
Jan Bartoníček

Abstract This paper's goal is to briefly explain the basic theory behind programming languages and their history while taking a close look at different programming paradigms that are used today as well as describing their differences, benefits, and drawbacks


2021 ◽  
Author(s):  
◽  
Frank Schmager

<p>GO is a new object-oriented programming language developed at Google by Rob Pike, Ken Thompson, and others. GO has the potential to become a major programming language. GO deserves an evaluation.  Design patterns document reoccurring problems and their solutions. The problems presented are programming language independent. Their solutions, however, are dependent on features programming languages provide. In this thesis we use design patterns to evaluate GO. We discuss GO features that help or hinder implementing design patterns, and present a pattern catalogue of all 23 Gang-of-Four design patterns with GO specific solutions. Furthermore, we present GoHotDraw, a GO port of the pattern dense drawing application framework JHotDraw. We discuss design and implementation differences between the two frameworks with regards to GO.</p>


1991 ◽  
Vol 57 (3-4) ◽  
pp. 221-236 ◽  
Author(s):  
Masahiko Sekine ◽  
Hiroshi Nakanishi ◽  
Masao Ukita ◽  
Sadaaki Murakami

Sign in / Sign up

Export Citation Format

Share Document