class: middle, center
by Luca De Feo
Sep 2, 2015. OpenDreamKit kickoff meeting.
- separate modules inside a unique software,
- separate softwares interacting through
- library calls,
- APIs (e.g.: web APIs).
When combined together, they make up a full VRE.
- A math library:
libGAP
,libPari
,Flint
, ... - A module: integers, rationals, number fields, finite fields, ...
- A full blown software: GAP, Pari/GP, Sagemath, Jupyter, ...
- Portable: mobile, desktops, cloud, ...
- Modular: easy install, buildi, test, distribute, remix, ...
- Flexible: personal computation, HPC, parallel platforms, ...
- Open:
- open source, of course,
- well documented,
- easy to inspect: what algorithm is run? What are the alternatives?
- OSS is great for research: powerful tools, open scrutiny, reproducibility, community, ...
- But there are still many areas where OSS is not so great:
- Deep inspection: analyze algorithms & optimizations, compare frameworks;
- Semantic interfaces: software that understands mathematics and communicates them;
- Entry barriers: improve docs, UX, support for different platforms;
- Credit: aknowledge contributions, peer reviews.
Let's improve these and bring about the next generation of mathematical software!
- Portability (UVSQ):
- SageMath & co. on Windows (and other exotic platforms),
- continuous integration.
- Interfaces between systems (UPSud):
- passing mathematical objects via SCSCP (OpenMath based RPC for computer algebra),
- automatic discovery of functionality, documentation, ...
- performance.
- Modularisation and packaging (UVSQ):
- Virtualisation,
- Review community packaging & distribution in Python/SageMath/GAP, come up with a new solution,
- SageMath in Linux standard package systems.
- Simulagora integration (Logilab):
- Deliver Simulagora VMs every 6 months.
- Component architecture for High Performance Computing and Parallelism (UJF):
- Parallelism-friendly composition of components.
- Document and modularise SageMathCloud’s codebase (UPSud):
- SMC is a moving target, evolving very quickly. Coordination with UWashington is top priority.
- Improving the development workflow in mathematical software (UVSQ):
- Bug reporting, community patches, integration in VRE.
- Python interface for OOMMF micromagnetic simulation library (Southampton):
- Demonstrator for Object Oriented MicroMagnetic Framework in Jupyter.