Difference between revisions of "Sygnm"

From sygnm
Jump to: navigation, search
m (Protected "Sygnm" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite)))
Line 1: Line 1:
 
{{lowercase}}
 
{{lowercase}}
 +
__NOTOC__
 +
== What is sygnm? ==
 +
sygnm is a general purpose computer algebra system, currently in pre-alpha state of development. It differs in several aspects from other current computer algebra systems. sygnm is free software, licensed under the GNU AGPL.
 +
 +
sygnm aims to:
 +
* build on existing open source technologies while keeping the whole system consistent
 +
* be highly modular and extensible
 +
* be portable
 +
* support parallellization
 +
* focus solely on mathematics, not being a general purpose programming environment
 +
* respect user rights and privacy
 +
* be a good base for future development
 +
== How is sygnm different? ==
 +
* No new programming language to learn: sygnm can operate in a simplified interactive ("calculator") mode, or can be used as a library from existing languages (currently C++ and Python)
 +
* Implements a dynamic type system for runtime function overload resolution on top of C++, based on typeclasses and parametric polymorphism
 +
* Highly modular, divided to three main parts: core, packages and user interfaces
 +
* Unique  I/O architecture supporting multiple expression parsers, renderers and I/O interfaces with different syntaxes, which can be combined freely
 +
* Fully localizable, Unicode can be used everywhere in the sygnm system (even in function names and other identifiers)
 +
 +
== Download sygnm ==
 +
sygnm is currently in pre-alpha, there are no releases yet.
 +
The source is available at https://git.sygnm.org.
 +
There is some documentation on how to [[Building sygnm from source|build|]] and [[Running sygnm|run]] sygnm from source.

Revision as of 04:04, 5 March 2017


What is sygnm?

sygnm is a general purpose computer algebra system, currently in pre-alpha state of development. It differs in several aspects from other current computer algebra systems. sygnm is free software, licensed under the GNU AGPL.

sygnm aims to:

  • build on existing open source technologies while keeping the whole system consistent
  • be highly modular and extensible
  • be portable
  • support parallellization
  • focus solely on mathematics, not being a general purpose programming environment
  • respect user rights and privacy
  • be a good base for future development

How is sygnm different?

  • No new programming language to learn: sygnm can operate in a simplified interactive ("calculator") mode, or can be used as a library from existing languages (currently C++ and Python)
  • Implements a dynamic type system for runtime function overload resolution on top of C++, based on typeclasses and parametric polymorphism
  • Highly modular, divided to three main parts: core, packages and user interfaces
  • Unique I/O architecture supporting multiple expression parsers, renderers and I/O interfaces with different syntaxes, which can be combined freely
  • Fully localizable, Unicode can be used everywhere in the sygnm system (even in function names and other identifiers)

Download sygnm

sygnm is currently in pre-alpha, there are no releases yet. The source is available at https://git.sygnm.org. There is some documentation on how to build| and run sygnm from source.