Skip to content
Free planNo credit card requiredStart writing

Search 250 million research papers

Read the abstract, see who wrote it and who cites it, and get the citation in APA, MLA, Chicago or Harvard.

About 543 papers for “Second-generation programming language”

A Constraint and Object Oriented Fifth Generation Programming Language and its Compiler and Runtime System

Han Jipeng, Lichen Zhihang · arXiv (Cornell University) · 2022

Since the advent of LISP, the fifth generation programming language has developed for decades. However, compared with the fourth generation programming language, the fifth generation programming language has not been widely used because of its obscure semantics, rigorous representation of problems, and limited inference ability. For this reason, COOL (Constraint and Object Ordered Language), a fifth generation programming language proposed in this paper, overcomes the problems of intuitive semantics, rigorous restrictions on handling problem conditions, and improves the inference ability of previous fifth generation programming languages. Specific improvements are as follows: First, COOL supports process-oriented and object-oriented for easy application in production projects; Second, COOL supports expression as function declaration and function return, which improves language affinity for mathematical formulas, and supports embedding function parameters into function name strings to make function naming closer to natural languages. Make mathematical problems easier to describe; Third, COOL introduces a weighting mechanism and accelerates the inference process through cumulative weighting. Fourth, COOL introduces the concepts of forward and reverse functions in programming so that computers can infer and execute problems with logical sequential constraints. Fifth, the computer can deduce the reverse solution process by using the forward solution process through the back-tracking algorithm and the dynamic programming algorithm, so that the computer can deduce the problem with time-sequential constraints. Sixth, the pre-execution step is introduced to separate the inference and function query process of the program from the execution process, so as to improve the execution speed of the program.

Cited by 2Open access

A concurrent object-oriented framework for the simulation of neural networks

Alfredo Weitzenfeld, Michael A. Arbib · 1991

This paper discusses the issues in simulating neural networks using an object-oriented concurrent programming framework, based on our experience in developing two generations of the NSL (Neural Simulation Language) simulation system. The second generation simulation system, NSL 2.0, was designed and implemented utilizing object-oriented programming concepts. We close with future design and implementation directions.

Cited by 15Open access

User Friendly Authoring Languages: An Alternative Approach,

Carissa Myers, Robert Schaefer · Defense Technical Information Center (DTIC) · 1983

Two general types of programming languges have been developed for computer based educational systems. The first type of language, which is patterned after such high order languages as PASCAL or FORTRAN, provides great programming flexibility. However, its structured, syntactical constructs require either that an experienced programmer be involved in lesson generation or that instructional personnel become skilled in sound programming techniques. To avoid these problems, the second type of language was developed. It allows instructional personnel to generate on-line instructional materials without acquiring sophisticated programming skills. This second category of languages is often thought of as being user friendly. They serve very well for many applications, but their use has not been without problems. This paper describes the OMEGSA authoring system, a lesson authoring approach that provides instructional personnel with the positive features of both of the above language types. The paper first relates some basic facts about computer systems in general, and then discusses the various aspects of user friendliness in the context of educational programming. It then describes and evaluates both the traditional and OMEGA approaches to user friendly authoring.

Cited by 0

Projecting a Modular Future

Markus Voelter, Jos Warmer, Bernd Kolb · IEEE Software · 2014

Two innovations are enhancing programming languages' capabilities. First, modularity lets you combine independently developed languages without changing their respective definitions. A language is no longer a fixed quantity; you can extend it with domain-specific constructs as needed. Second, projectional editing lets you build editors and IDEs that don't require parsers. Such editors and IDEs support a range of tightly integrated notations, including textual, symbolic, tabular, and graphical notations. In addition, by avoiding parsers, they avoid grammar composition's well-known limitations. Three examples illustrate how these two innovations affect programming-language design. A set of modular extensions of C for embedded programming enables efficient code generation and formal analysis. A language for requirements engineering flexibly combines structured and unstructured (prose) data. Finally, a language for defining insurance rules uses mathematical notation. These examples all rely on the open source JetBrains MPS (Meta Programming System) language workbench. This article is part of a special issue on Software Architecture.

Cited by 22

Programming means for simulation of logical networks. II

Kindler, Evžen · Czech digital mathematics library · 1973

Programming Means for Simulation of Logical Networks II EVZEN KlNDLERThe serie of papers contains the information about programming means which enable to program the models of logical networks also for the non-computer-oriented users.The present part is directed for the second generation computers.There is presented a simulation programming system oriented to the considered class of problems -its language and compiler into an algorithmical language.A description of a programming methodics follows which enables to use the system COSMO for simulation of logical networks though it has been originally determined to continuous problems.

Cited by 0Open access

programming language processors in java compilers and interpreters pdf

tfnxrebgf · Zenodo (CERN European Organization for Nuclear Research) · 2024

programming language processors in java compilers and interpreters pdf Rating: 4.5 / 5 (4209 votes) Downloads: 36916 = = = = = CLICK HERE TO DOWNLOAD = = = = = Programming Language Processors in Java COMPILERS AND INTERPRETERS by David A. Watt and Deryck F. Brown. Programming language processorsSpecification of programming languagesSyntaxContextual constraintsSemanticsCase study: the Programming Language Processors in Java Compilers and Interpreters David A Watt University of Glasgow, Scotland and Deryck F Brown The Robert Gordon University, Programming Language Processors in Java Compilers and InterpretersFree ebook download as PDF File.pdf), Text CIn UFPE Section suggests further reading on the concepts of high-level programming languagesProgramming Language Processors in Java Programming This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object Traditionally, the target language of compilers is machine code, which the computer's processor knows how to execute. The following diagram shows the individual concrete subclasses for an array aggregate: I. SingleArrayAggregate. A notable example is Java and the similar approach taken by the Microsoft DOWNLOAD PDF. Programming Language Processors in Java COMPILERS AND INTERPRETERSDAVID A WATT University of Glasgow, Scotland and DERYCK F ISBN This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, "This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object-oriented programming language Java. The book aims to exemplify good software engineering Programming Language Processors in Java Compilers and InterpretersFree ebook download as PDF File.pdf), Text File.txt) or read book online for free. The book aims to exemplify good software engineering principles at the same time as explaining the specific techniques needed to build compilers and Programming Language Processors in Java. D Value-or-variable names The following diagram shows the individual concrete subclasses for each form of valueor-variable name: Class Diagrams for the Triangle Compiler This paper presents a meta-language processing framework that automates the very labor-intensive and therefore time-heavy and therefore expensive process of manually compiling and annotating source codeIntroductionLanguage ProcessorsCompilationSyntactic AnalysisContextual AnalysisRun-time OrganizationCode Generation 8 Programming language processorsSpecification of programming languagesSyntaxContextual constraintsSemanticsCase study: the programming language TriangleFurther readingExercisesLanguage ProcessorsTranslators and compilersInterpretersReal and abstract machines Programming Language Processors in Java Compilers and Interpreters David A Watt University of Glasgow, Scotland and Deryck F Brown The Robert Gordon University 1 Interpreters vs. This is an instance of the second method for running Java and Virtual Machine Many systems combine aspects of both compilers and interpreters. University of Glasgow, Scotland and the Robert Gordon university CIn UFPE language(source) language(target) compiler David A Watt and Deryck F Brown Programming Language Processors in Java Compilers and Interpreters This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object-oriented programming language Java. compilers There are two strategies for obtaining runnable code from a program written in some programming lan-guage that we will call the source language. The first is compilation, or translation, in which the program is translated into a second, target language.

Cited by 0Open access

A Swiss Pocket Knife for Computability

Jones, Neil D. · arXiv (Cornell University) · 2013

This research is about operational- and complexity-oriented aspects of classical foundations of computability theory. The approach is to re-examine some classical theorems and constructions, but with new criteria for success that are natural from a programming language perspective. Three cornerstones of computability theory are the S-m-ntheorem; Turing's "universal machine"; and Kleene's second recursion theorem. In today's programming language parlance these are respectively partial evaluation, self-interpretation, and reflection. In retrospect it is fascinating that Kleene's 1938 proof is constructive; and in essence builds a self-reproducing program. Computability theory originated in the 1930s, long before the invention of computers and programs. Its emphasis was on delimiting the boundaries of computability. Some milestones include 1936 (Turing), 1938 (Kleene), 1967 (isomorphism of programming languages), 1985 (partial evaluation), 1989 (theory implementation), 1993 (efficient self-interpretation) and 2006 (term register machines). The "Swiss pocket knife" of the title is a programming language that allows efficient computer implementation of all three computability cornerstones, emphasising the third: Kleene's second recursion theorem. We describe experiments with a tree-based computational model aiming for both fast program generation and fast execution of the generated programs.

Cited by 0Open access

Declarative paradigm of test coverage

Fevzi Belli, Oliver Jack · Software Testing Verification and Reliability · 1998

Two facts about declarative programming prevent the application of conventional testing methods. First, the classical test coverage measures such as statement, branch or path coverage, cannot be used, since in declarative programs no control flow notion exists. Second, there is no widely accepted language available for formal specification, since predicate logic, which is the most common formalism for declarative programming, is already a very high-level abstract language. This paper presents a new approach exending previous work by the authors on test input generation for declarative programs. For this purpose, the existing program instrumentation notion is extended and a new logic coverage measure is introduced. The approach is mathematically formalized and the goal of achieving 100% program logic coverage controls the automatic test input generation. The method is depicted by means of logic programming; the results are, however, generally applicable. Finally, the concepts introduced have been used practically within a test environment. © 1998 John Wiley & Sons, Ltd.

Cited by 13

OR Y 18 APPLICATION DEVELOPMENT ADVISOR

2015

THE DEMISE of the programminglanguage has been fashionably pre-dicted every decade since pro-gramming rose from first-generation machine code to second generation assembly language. But programming languages are as popular now as they ever have been, and are just as rich a source of disagreement among devel-opers: language of choice, like editor of choice, still ranks high as something of a religious issue. The current industry emphasis is not so much on the use of single languages for monolithic projects, but on the development and integration of components. This increas-ingly demands that developers obtain mul-

Cited by 0

PWCT2: A Self-Hosting Visual Programming Language Based on Ring with Interactive Textual-to-Visual Code Conversion

Mahmoud Samir Fayed, Yousef Al-Ohali · Applied Sciences · 2025

Visual programming languages (VPLs) play a significant role in simplifying the process of learning to program and reducing development time. Most VPLs are developed for use in education or specific domains. Recently, some projects have aimed to provide general-purpose VPLs. Among these projects is the Programming Without Coding Technology (PWCT) project, which has been used for several years to develop and maintain the compiler and virtual machine for the Ring programming language. However, PWCT faces several issues related to code generation performance and the operating systems it supports. Additionally, its visual editor lacks many features, such as rich comments, auto-run, and the ability to import textual code, which are highly important in the era of using large language models for generating textual code. In this research, we present the PWCT2 visual programming language, which is distributed on the Steam platform. On Steam, 1772 users have launched the software, and the total usage time recorded exceeds 17,000 h. This generation provides approximately 36 times faster code generation and 20 times lower storage requirements for visual source files. It also allows for the conversion of Ring code into visual code, enabling the creation of a self-hosting VPL. It consists of approximately 92,000 lines of Ring code and comes with 394 visual components. Moreover, using Ring in this project demonstrates the feasibility of utilizing the language for projects of this scale. Ring compiles PWCT2 in less than one second, and the generated bytecode consists of approximately 724,000 instructions.

Cited by 2Open access

The Challenge of Cross-language Interoperability

David Chisnall · Queue · 2013

Interoperability between languages has been a problem since the second programming language was invented. Solutions have ranged from language-independent object models such as COM (Component Object Model) and CORBA (Common Object Request Broker Architecture) to VMs (virtual machines) designed to integrate languages, such as JVM (Java Virtual Machine) and CLR (Common Language Runtime). With software becoming ever more complex and hardware less homogeneous, the likelihood of a single language being the correct tool for an entire program is lower than ever. As modern compilers become more modular, there is potential for a new generation of interesting solutions.

Cited by 9Open access

Uses and relevancy of old and new programming languages

Morozova, Stefanija · Theseus (Ammattikorkeakoulujen) · 2023

The purpose of the thesis was to analyze the of uses and necessities of programming languages of different generations. The thesis sought to analyze the connection between a programming language’s function, research volume and possible industry growth and compared to the industry in use. The research questions were what separates the old languages from the new, how the traits of these languages affect that, and which industries would these languages grow in. Programming language history and Industry growth are also discussed. The thesis was commissioned by the HAMK University of Applied Sciences.
\n
\nThis thesis is practical and focuses on analysing data and basing conclusions from that analysis. First, the thesis defines the scope and timeline of the research, as well as the definitions of each generation. Second, the central concepts related to each generation of programming languages are explained. Four generations in total were defined. The primary research method was applying the theoretical base to data gathered regarding the documentation of that language and the industries in which they would work best. The data was analyzed by the author using EXCEL.
\n
\nThe research demonstrates that neither generation has the upper hand in popularity or relevance, rather each one has one or two well-known and relevant languages which propagate the amount of research is done on that language. The analysis indicates that both old and new programming languages are still in use. Due to the limited scope of the thesis, this research can be reviewed and redone with more accurate data.

Cited by 0Open access

Research output for the designing of commonsense programming language for the views of Logtalk

Dr. Paulo Jorge Lopes De Moura, Dr. Abel Jo˜Ao Padr˜Ao Gomes, · Zenodo (CERN European Organization for Nuclear Research) · 2022

Why growing Logtalk? The closing answer is, of the route, for the laugh of it. But, some readers might count on a unique type of solution. There are a number of reasons and outcomes of the modern-day state of affairs of both common sense programming and item-oriented programming. Concerning good judgment programming, Prolog, its maximum considerable language, born in 1972 still lacks a popular library and a function set appropriate for programming inside the huge. The primary Prolog ISO is popular. Concerning the core components of the language, turned into published in 1995, and is being followed at a sluggish tempo through the Prolog network. The second one is ISO fashionable. Concerning the module system, turned posted in 2000 and is basically not noted by the maximum of the Prolog community. Lengthy long gone are the days of the Japanese fifth generation pc system venture targeted on the guarantees of common sense programming because of the silver bullet. Nowadays, Prolog is a niche language. Logic became dropped as a programming paradigm from the first draft of the 2001 ACM/IEEE computer technology Curricula and turned into best re-brought within the curricula very last document after a great deal of pressure from the good judgment programming community. There are, of course, many reasons for the present-day country of good judgment programming in general, and Prolog especially. Although sociologic and political motives aside, Prolog's technical handicaps, together with the inexistence of popular libraries, popular foreign language interfaces, and powerful encapsulation mechanisms, make it an uphill battle to apply the language and the good judgment programming paradigm for coaching, discovering, or business software program development

Cited by 0Open access

X10: Programming for Hierarchical Parallelism and Non-Uniform Data Access (Extended Abstract)

Kemal Ebcioglu, et al. · 2004

The challenges faced by current and future-generation largescale systems include: 1) Frequency wall: inability to follow past frequency scaling trends, 2) Memory wall: inability to support a coherent uniform-memory access model with reasonable performance, and 3) Scalability wall: inability to utilize all levels of available parallelism in the system. These challenges manifest themselves as both performance and productivity issues in the use of large-scale systems. X10 is an experimental modern object-oriented programming language being developed to help address the second and third of these three challenges. It is intended for highperformance, high-productivity programming of large-scale computer systems with non-uniformities in data access and coherence, as well as multiple heterogeneous levels of parallelism. This paper provides a summary of the X10 language and programming model, and discusses its applicability to future processor architectures and runtime systems.

Cited by 0

Hnetynka: “Interoperable DSL Families for Code Generation

Michal Malohlava, Frantisek Plasil, Tomas Bures et al. · 2011

Abstract: This paper has been motivated by experience gained with specification and code generation of control elements for a software component platform and general-purpose (GP) programming language like Java and C. The problem to be addressed is two-fold: first, several domain-specific languages (DSL) are to be employed to express different element concerns (architecture, deployment context, code pattern) and second, porting to another GP language should avoid modification of the specification and related code generation process as much as possible. In both respects, the classical template-based code generation technique proved to be inflexible, requiring the code generator to be blurred with ad-hoc encoded DSL facets. The paper addresses the problem by introducing the concept of interoperable DSL family. Each member of the family is built around its core language which can be further specialized by embedding into a target programming language. Interoperability of these DSLs is achieved at the level of ASTs with help of queries. As a proof of the concept, we have implemented the queries via the AST transformation rules of the Stratego/XT framework. In the evaluation, we provide a comparison with the original template-based implementation which clearly indicates the DSL family and AST transformation

Cited by 0

How to Teach Computer Programming in the Age of Generative Artificial Intelligence

Clemente Rubio-Manzano, Jazna Meza, Rodolfo Fernández-Santibáñez et al. · 2025

Computer programming is experiencing a paradigm shift driven by the advent of powerful large language model–based tools for automatic source code generation. This transformation is also reshaping introductory programming courses worldwide, raising critical questions on how programming should be taught, learned, and assessed in the era of generative artificial intelligence.This article pursues two objectives. First, it reviews the main studies addressing this issue, emphasizing the reported advantages and limitations. Second, it proposes enhancements to teaching and learning methodologies by prioritizing code comprehension and execution over code writing or functionality. Specifically, the use of visual code representations and execution simulations is proposed as an effective approach for teaching, learning, and assessing programming, ensuring a deeper conceptual understanding among students.Finally, the article reports preliminary insights from students enrolled in an object-oriented programming course, providing contextual evidence to support the integration of visual simulations in Java (and other programming languages) within programming education.

Cited by 0

A Language Independent Scanner Generator

Teodor Rus And, Teodor Rus, Tom Halverson · 1998

This paper discusses a new methodology for scanner generation that supports language independent lexicon specification and automatic generation of stand alone lexical analyzers from specifications. The mechanism that sits at the basis of this methodology is the layering of the lexicon specification on two levels: in the first level, "universal" lexical constructs which are used as building blocks by most programming languages are defined, and in the second level, customized lexical constructs of specific programming languages are specified in terms of universal lexical constructs. The universal lexicon is specified by regular expressions over a global alphabet used by most programming languages, such as the character set of a keyboard, and is efficiently implemented by deterministic finite automata. The customized lexicon is conveniently specified by regular expressions of properties of universal lexical constructs and is implemented by nondeterministic automata whose transition functi...

Cited by 0

programming language processors in java compilers and interpreters pdf

tfnxrebgf · Zenodo (CERN European Organization for Nuclear Research) · 2024

<pre><code>\n<p><strong>programming language processors in java compilers and interpreters pdf</strong><br></p>\n<p>Rating: 4.5 / 5 (4209 votes)<br></p>\n<p>Downloads: 36916<br><br></p>\n <p>= = = = = \n<strong><a href="https://myvroom.fr/21Nr9y?keyword=programming language processors in java compilers and interpreters pdf" target="_blank">CLICK HERE TO DOWNLOAD</a></strong>\n = = = = = <br><br></p>\n<p><br><br><br><br></p>\n<p><br><br><br><br></p>\n<p><br><br>Programming Language Processors in Java COMPILERS AND INTERPRETERS by David A. Watt and Deryck F. Brown. Programming language processorsSpecification of programming languagesSyntaxContextual constraintsSemanticsCase study: the Programming Language Processors in Java Compilers and Interpreters David A Watt University of Glasgow, Scotland and Deryck F Brown The Robert Gordon University, Programming Language Processors in Java Compilers and InterpretersFree ebook download as PDF File.pdf), Text CIn UFPE Section suggests further reading on the concepts of high-level programming languagesProgramming Language Processors in Java Programming This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object Traditionally, the target language of compilers is machine code, which the computer's processor knows how to execute. The following diagram shows the individual concrete subclasses for an array aggregate: I. SingleArrayAggregate. A notable example is Java and the similar approach taken by the Microsoft DOWNLOAD PDF. Programming Language Processors in Java COMPILERS AND INTERPRETERSDAVID A WATT University of Glasgow, Scotland and DERYCK F ISBN This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, "This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object-oriented programming language Java. The book aims to exemplify good software engineering Programming Language Processors in Java Compilers and InterpretersFree ebook download as PDF File.pdf), Text File.txt) or read book online for free. The book aims to exemplify good software engineering principles at the same time as explaining the specific techniques needed to build compilers and Programming Language Processors in Java. D Value-or-variable names The following diagram shows the individual concrete subclasses for each form of valueor-variable name: Class Diagrams for the Triangle Compiler This paper presents a meta-language processing framework that automates the very labor-intensive and therefore time-heavy and therefore expensive process of manually compiling and annotating source codeIntroductionLanguage ProcessorsCompilationSyntactic AnalysisContextual AnalysisRun-time OrganizationCode Generation 8 Programming language processorsSpecification of programming languagesSyntaxContextual constraintsSemanticsCase study: the programming language TriangleFurther readingExercisesLanguage ProcessorsTranslators and compilersInterpretersReal and abstract machines Programming Language Processors in Java Compilers and Interpreters David A Watt University of Glasgow, Scotland and Deryck F Brown The Robert Gordon University 1 Interpreters vs. This is an instance of the second method for running Java and Virtual Machine Many systems combine aspects of both compilers and interpreters. University of Glasgow, Scotland and the Robert Gordon university CIn UFPE language(source) language(target) compiler David A Watt and Deryck F Brown Programming Language Processors in Java Compilers and Interpreters This book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object-oriented programming language Java. compilers There are two strategies for obtaining runnable code from a program written in some programming lan-guage that we will call the source language. The first is compilation, or translation, in which the program is translated into a second, target language.</p></code></pre>

Cited by 0Open access

Center for Programming Models for Scalable Parallel Computing (Final Report)

John Mellor‐Crummey · OSTI OAI (U.S. Department of Energy Office of Scientific and Technical Information) · 2011

As part of the Center for Programming Models for Scalable Parallel Computing, Rice University collaborated with project partners in the design, development and deployment of language, compiler, and runtime support for parallel programming models to support application development for the “leadership-class” computer systems at DOE national laboratories. Work over the course of this project has focused on the design, implementation, and evaluation of a second-generation version of Coarray Fortran. Research and development efforts of the project have focused on the CAF 2.0 language, compiler, runtime system, and supporting infrastructure. This has involved working with the teams that provide infrastructure for CAF that we rely on, implementing new language and runtime features, producing an open source compiler that enabled us to evaluate our ideas, and evaluating our design and implementation through the use of benchmarks. The report details the research, development, findings, and conclusions from this work.

Cited by 0Open access