C Language Extension to Support Procedural-Parametric Polymorphism

نویسندگان

چکیده

Software development is often about expanding functionality. To improve reliability in this case, it necessary to minimize the change previously written code. For instrumental support of evolutionary programs, a procedural-parametric programming paradigm was proposed, which made possible increase capabilities procedural approach. This allows extend both data and functions painlessly. The paper considers inclusion C language. Additional syntactic constructions are proposed These include: parametric generalizations, specializations generalizing functions, specialization handlers. Their semantics, possibilities features technical implementation described. check using approach, models language were built. example article demonstrates flexible extension program multiple polymorphism.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Transposing F to C#: expressivity of parametric polymorphism in an object-oriented language

class Tree { } class Leaf : Tree { public A val; public Leaf(A a) { val = a; } } class Node : Tree { public Tree left; public Tree right; public Node(Tree l, Tree r) { left = l; right = r; } } interface Arrow { B apply(A x); } Copyright c © 2003 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. 2003; 00:1–7 Prepared using cpeauth.cls TRANSPOSING F TO C...

متن کامل

Parametric Polymorphism in the Go Programming Language

An extension to the Go language was developed that introduces parametric polymorphism in the form of generic functions. The changes to the language and the compiler needed to implement the type system extensions are discussed, and alternative implementation strategies are described. The resulting implementation of generic functions is backwards compatible with the existing Go standard and is co...

متن کامل

Concept Checking: Binding Parametric Polymorphism in C++

Generic programming in C++ is characterized by the use of template parameters to represent abstract data types (or “concepts”). However, the C++ language itself does not provide a mechanism for explicitly handling concepts. As a result, it can be difficult to insure that a concrete type meets the requirements of the concept it is supposed to represent. Error messages resulting from incorrect us...

متن کامل

willingness to communicate in the iranian context: language learning orientation and social support

why some learners are willing to communicate in english, concurrently others are not, has been an intensive investigation in l2 education. willingness to communicate (wtc) proposed as initiating to communicate while given a choice has recently played a crucial role in l2 learning. it was hypothesized that wtc would be associated with language learning orientations (llos) as well as social suppo...

Signatures: A Language Extension for Improving Type Abstraction and Subtype Polymorphism in C++

c++ uscs inheritance as a substitute for subtype polymorphism. We give examples where this makes tbe type system too inflexible. We then describe a conservative language extension 1.1111.1 allows a programmer to define an abstract. type hierarchy independent of any implementation hierarchies, to retroactively abstract over an implementation, and to decouple subtyping from inheritance. This exte...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Modelirovanie i Analiz Informacionnyh Sistem

سال: 2023

ISSN: ['2313-5417', '1818-1015']

DOI: https://doi.org/10.18255/1818-1015-2023-1-40-62