Poly/ML
Poly/ML: High-Performance Scientific Computing Language
Poly/ML is a functional and imperative programming language in the ML family targeted towards scientific computing. It features static typing, automatic memory management, and supports compilation to native code for efficient execution.
What is Poly/ML?
Poly/ML is a functional and imperative programming language in the ML family targeted towards scientific computing applications and education. It combines support for both functional and imperative programming paradigms.
Key features of Poly/ML include:
- Statically typed with type inference
- Automatic memory management via garbage collection
- Supports polymorphic functions and data types
- Includes recursive types, tuple types, record types
- Has a module system for encapsulation and reuse
- Compiles to native code for efficient execution
- Includes features like exceptions, input/output
- Rich standard library including lists, vectors, matrices
Poly/ML builds on the ML language family and draws influences from languages like Standard ML and OCaml. The goal of the language is to combine expressiveness, safety, and high performance for computationally intensive tasks in fields like physics, math, biology, and more.
The Poly/ML implementation features an optimizing compiler to native code as well as an interactive REPL environment. It runs on major platforms like Linux, macOS, and Windows.
Poly/ML Features
Features
- Statically typed functional programming language
- Type inference
- Automatic memory management
- Support for imperative programming
- Compiles to native code for efficiency
- Built-in support for arrays, lists, options, records
- Support for recursion, higher-order functions
- Module system for abstraction and information hiding
- Interactive environment
Pricing
- Open Source
Pros
Cons
Official Links
Reviews & Ratings
Login to ReviewThe Best Poly/ML Alternatives
View all Poly/ML alternatives with detailed comparison →
Top Development and Programming Languages and other similar apps like Poly/ML
SML/NJ