23 relations: Apache Groovy, Cross-platform, Eclipse (software), Eclipse Public License, Extension method, Functional programming, General-purpose programming language, Guillemet, High-level programming language, Higher-order function, Imperative programming, Java (programming language), Java virtual machine, Lambda calculus, Multiple dispatch, Object-oriented programming, Operator overloading, Scala (programming language), Smalltalk, Strong and weak typing, Type inference, Type system, Xtext.
Apache Groovy is a Java-syntax-compatible object-oriented programming language for the Java platform.
In computing, cross-platform software (also multi-platform software or platform-independent software) is computer software that is implemented on multiple computing platforms.
Eclipse is an integrated development environment (IDE) used in computer programming, and is the most widely used Java IDE.
The Eclipse Public License (EPL) is an open source software license used by the Eclipse Foundation for its software.
In object-oriented computer programming, an extension method is a method added to an object after the original object was compiled.
In computer science, functional programming is a programming paradigm—a style of building the structure and elements of computer programs—that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data.
In computer software, a general-purpose programming language is a programming language designed to be used for writing software in the widest variety of application domains (a general-purpose language).
Guillemets, or angle quotes, are a pair of punctuation marks in the form of sideways double chevrons (« and »), used instead of quotation marks in a number of languages.
In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer.
In mathematics and computer science, a higher-order function (also functional, functional form or functor) is a function that does at least one of the following.
In computer science, imperative programming is a programming paradigm that uses statements that change a program's state.
Java is a general-purpose computer-programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible.
A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages and compiled to Java bytecode.
Lambda calculus (also written as λ-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution.
Multiple dispatch or multimethods is a feature of some programming languages in which a function or method can be dynamically dispatched based on the run-time (dynamic) type or, in the more general case some other attribute, of more than one of its arguments.
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which may contain data, in the form of fields, often known as attributes; and code, in the form of procedures, often known as methods. A feature of objects is that an object's procedures can access and often modify the data fields of the object with which they are associated (objects have a notion of "this" or "self").
In programming, operator overloading, sometimes termed operator ad hoc polymorphism, is a specific case of polymorphism, where different operators have different implementations depending on their arguments.
Scala is a general-purpose programming language providing support for functional programming and a strong static type system.
Smalltalk is an object-oriented, dynamically typed, reflective programming language.
In computer programming, programming languages are often colloquially classified as to whether the language's type system makes it strongly typed or weakly typed (loosely typed).
Type inference refers to the automatic detection of the data type of an expression in a programming language.
In programming languages, a type system is a set of rules that assigns a property called type to the various constructs of a computer program, such as variables, expressions, functions or modules.
Xtext is an open-source software framework for developing programming languages and domain-specific languages (DSLs).