SWISH (SWI)-Prolog for SHaring is a web based shared notebook environment for SWI-Prolog. It was first conceived as a web resource for students learning about the Prolog programming language. Within the VRE4EIC European project, the HCDA team further developed SWISH as a DataLab, adding integration with the R statistical package, creating reproducible snapshots and role based access control.
Prolog is suitable for data integration and cleaning. SWISH allows multiple users to manage a shared set of programs and notebooks. The integration with R provides access to statistical analysis, machine learning and R graphics. SWISH provides a generic API with clients in several languages to access programs and data.
SWISH has proved to be capable of handling over 1,000 concurrent users. SWISH is used for creating teaching and research environments for Prolog applications and extensions. Most of these are only locally accessible. LPS and cplint and examples of public tools.
SWISH is distributed under the BSD-2 license and may be downloaded from https://github.com/SWI-Prolog/swish