From sygnm
Revision as of 02:30, 1 March 2018 by Sygnmdev (talk | contribs) (How is sygnm different?)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

sygnm (pronounced as "signum") is a general purpose computer algebra framework, currently in pre-alpha state of development, which differs in several aspects from current computer algebra systems. It 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++, Python, Ruby and Java)
  • implements a dynamic type system for runtime function overload resolution on top of C++, based on typeclasses and parametric polymorphism
  • highly modular, divided into 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 framework (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 There is some documentation on how to build and run sygnm from source.