A portable adaptive runtime system for parallel applications.
Application developers create an object-based decomposition of the problem of interest, and the runtime system manages issues of communication, mapping, load balancing, fault tolerance, and more. Sequential code implementing the
... [More] methods of these parallel objects is written in C++. Calls to libraries in C++, C, and Fortran are common and straightforward.
Charm++ is portable across individual workstations, clusters, accelerators (Cell SPEs, GPUs), and supercomputers such as those sold by IBM (Blue Gene, POWER) and Cray (XT3/4/5/6 and XE6). Applications based on Charm++ are used on at least 5 of the 20 most powerful computers in the world. [Less]
Ela is a modern programming language that runs on CLR and Mono.
The language is dynamically (and strongly) typed and comes with a rich and extensible type system out of box. It provides an extensive support for the functional programming paradigm including but not limited to - first class
... [More] functions, first class currying and composition, list/array comprehensions, pattern matching, polymorphic variants, thunks, etc. It also provides some imperative programming features.
Ela supports both strict and non-strict evaluation but is strict by default.
The current language implementation is a light-weight and efficient interpreter written fully in C#. The interpreter was designed to be embeddable and has a clear and straightforward API. [Less]
Component-based development has an intuitive underlying idea. Instead of developing a system by programming it entirely from scratch, develop it by using preexisting building blocks, components, and plug them together as required to the target system. The benefits are obvious. Parts of a system
... [More] which do not have to be programmed do not entail costs and do not face the project manager with the risks typically encountered in software projects. It was expected that using components will also contribute to an increase in system quality. However, this expectation is fulfilled only holds in certain circumstances; quality assurance techniques, particularly testing, are still required. Magnet tries to fulfill this issues. We defined three language to lead the analysts to produce better product using component-based development. We retain that, using text language with visual language (such as UML), you can pass from model to code in simplified way. Industrial development of software systems, often called software development in the large, generally needs to be guided by engineering principles similar to those in mature engineering disciplines. Informal methods, which might be appropriate for the development of simple software, cannot be employed for the development of software systems with high inherent complexity. This is one of the lessons learnt from the software crisis. The software crisis lead to the creation of the term software engineering to make clear that software development is an engineering discipline.
We’ve developed three languages: Magnet Language : a basic language defined over python interpreter (we use a just-in-time compiler to speed up the environment) . It supports three paradigms : functional, imperative, object-oriented and other no programmatic paradigms (aspects and unit testing). Magnet Architecture Language: This language allows you to analyze the subcomponent and simulating the behavior . Contextually, this is the entry point of software programs ( the main method is defined here). Magnet Model-Checking Language: This language defines a simplified model-checking language to perform quantitative and qualitative analysis. It’s suitable to perform intra-component testing and performance analysis. [Less]
Eero is a fully binary-compatible dialect of Objective-C 2.0, implemented with a patched version of the Clang/LLVM compiler. It features a streamlined syntax with improved readability and reduced code clutter. It also has new features such as Python indentation and limited forms of operator
... [More] overloading and namespaces. It is inspired by languages such as Smalltalk, Python, and Ruby. [Less]