Back to Search Start Over

Using SWISH to realize interactive web-based tutorials for logic-based languages

Authors :
Robert A. Kowalski
Jan Wielemaker
Fabrizio Riguzzi
Miguel Calejo
Torbjörn Lager
Fariba Sadri
Centrum Wiskunde & Informatica, Amsterdam (CWI), The Netherlands
Source :
Theory and Practice of Logic Programming, 19(2), 229-261
Publication Year :
2019

Abstract

Programming environments have evolved from purely text based to using graphical user interfaces, and now we see a move toward web-based interfaces, such as Jupyter. Web-based interfaces allow for the creation of interactive documents that consist of text and programs, as well as their output. The output can be rendered using web technology as, for example, text, tables, charts, or graphs. This approach is particularly suitable for capturing data analysis workflows and creating interactive educational material. This article describes SWISH, a web front-end for Prolog that consists of a web server implemented in SWI-Prolog and a client web application written in JavaScript. SWISH provides a web server where multiple users can manipulate and run the same material, and it can be adapted to support Prolog extensions. In this article we describe the architecture of SWISH, and describe two case studies of extensions of Prolog, namely Probabilistic Logic Programming and Logic Production System, which have used SWISH to provide tutorial sites.

Details

Language :
English
ISSN :
14710684
Volume :
19
Issue :
2
Database :
OpenAIRE
Journal :
Theory and Practice of Logic Programming
Accession number :
edsair.doi.dedup.....5a4857d3f5db4be1c2234d3f24c3f5d3