TryLinks: an interactive online platform to learn the Links programming language Nick Wu(
[email protected]) 4th Year Project Report Software Engineering School of Informatics University of Edinburgh 2018 Abstract Links is a web programming language under development in Edinburgh aimed at simplifying web development. Conventional multi-tier applications involve pro- gramming in several languages for different layers, and the mismatches between these layers and abstractions need to be handled by the programmer, which can lead to costly errors or security vulnerabilities. Inspired to solve this problem, Links was developed to unite these layers. Links is currently open for anyone to use. However, installing and using Links is non-trivial, making it difficult for new programmers to get started and learn about Links. The goal of this project is to implement a Web-based \TryLinks" system, for anyone to experiment with Links without going through the installation process. TryLinks was designed with two major functionalities: an interactive Links shell that teaches the basic syntax of Links and acts as a playground, as well as a short tutorial series on how Links is used in practical web development. This report outlines the development process of TryLinks. It reviews existing similar software and extracts appropriate requirements and design. Then it covers in detail the engineering decisions and techniques used in building TryLinks. Finally it evaluates TryLinks, and gives future directions of the software. Acknowledgements I would like to thank my supervisor, James Cheney, for continuous support throughout the project. Your advice and suggestions have been the greatest help for me. I would also like to thank my friends and family for their understanding and support throughout university, especially my parents for their endless patience and love.