Skip to content
wbhart edited this page Nov 8, 2014 · 5 revisions

Singular in Julia

Introduction

Julia is a programming language designed by mathematicians with a background in Pascal, Lisp and Python. It provides a sophisticated, modern language which is especially suited to doing mathematics.

Julia includes the following features:

  • Jit compilation (via the LLVM backend)
  • Parametric type system
  • Interactive console
  • IPython notebook support
  • Profiling
  • Bignum support
  • C/C++ foreign function interface (e.g. access to GMP, flint)
  • Package management system
  • Full native Windows support including Windows 64 (via Mingw2)
  • Modern IDE
  • Numerous mathematical types (matrices, polynomials) and packages for numerical mathematics
  • Metaprogramming
  • Parser library
  • Good community support and hundreds of packages
  • Ability to easily call Python

Goals

There are two primary goals in the medium term:

  • Singular binding in Julia
  • Write a Singular interpreter in Julia
  • Extending the Singular language with Julia and Python
  • Extending Singular to have multiple dispatch

Some long term goals might include:

  • A singular compiler

Planning

A sketch of our planning for the project is available on our planning

Progress

Clone this wiki locally