Links is a functional programming language designed to make web programming easier.
Links eases building interactive web applications with significant client- and server-side components.
Links incorporates proven ideas from other programming languages: database-query support from Kleisli, web-interaction proposals from PLT Scheme, and distributed-computing support from Erlang. On top of this, it adds some new web-centric features of its own.
DemosDemo Links programs.
DownloadThe original Links development effort ended at the beginning of 2009. The last official release of Links is version 0.6. In 2014 development on Links resumed with a focus on adding session types to Links.
- Via OPAM, use 'opam install links'
- GitHub repository
- Links Development VM Image -- Username: linksuser, Password: password
- Out-of-date basic documentation
Communitylinks-users mailing list
- Language-integrated provenance. Stefan Fehrenbach and James Cheney. PPDP 2016.
- Compiling Links Effect Handlers to the OCaml Backend. Daniel Hillerström, Sam Lindley, and KC Sivaramakrishnan. ML Workshop 2016.
- Liberating Effects with Rows and Handlers. Daniel Hillerström and Sam Lindley. In the proceedings of TyDe 2016.
- Effective quotation. James Cheney, Sam Lindley, Gabriel Radanne, and Philip Wadler. In the proceedings of PEPM 2014.
- Query shredding: efficient relational evaluation of queries over nested multisets. James Cheney, Sam Lindley, and Philip Wadler. In the proceedings of SIGMOD 2014.
- Row-based effect types for database integration. Sam Lindley and James Cheney. In the proceedings of TLDI 2012.
- DBWiki: a database wiki prototyped in Links. James Cheney, Sam Lindley and Heiko Müller. In the proceedings of DBPL 2011.
- The arrow calculus. Sam Lindley, Philip Wadler, and Jeremy Yallop.
- The essence of form abstraction. Ezra Cooper, Sam Lindley, Philip Wadler, and Jeremy Yallop. In the proceedings of APLAS 2008.
- Idioms are oblivious, arrows are meticulous, monads are promiscuous. Sam Lindley, Philip Wadler, and Jeremy Yallop. In the proceedings of MSFP 2008.
- Links: web programming without tiers. Ezra Cooper, Sam Lindley, Philip Wadler, and Jeremy Yallop. In the proceedings of FMCO 2006, LNCS 4709.
- Original grant proposal for EPSRC (2005).
Core teamGroup photo (Nov 2006).
- Ezra Cooper, PhD student (graduated).
- James Cheney.
- Gilles Dubochet, MSc student (graduated).
- Stefan Fehrenbach.
- Simon Fowler.
- Daniel Hillerström.
- Sam Lindley.
- Garrett Morris.
- Jan Stolarek.
- Philip Wadler.
- Jeremy Yallop, PhD student (graduated).
- Shriram Krishnamurthi, Nov 2006.
- Thierry Martinez, Mar–Aug 2006.
- Rodney Topor, Sep–Dec 2005. Rodney taught us about transactions.
- Building Bobcat - a web content management system in Links. Simon Vansintjan (2010).
- Web Menace: Links demonstration of a classic learning machine. Samuel Corbett (2009).
- Compiling Links server-side code. Steven Holmes (2009).
- LODE: an online IDE for Links in Links. Carl Andersson (2008).
- Online Scrabble in Links. Ashvin Jayaram (2008).
- Building web 2.0 applications in Links: Speed dependent automatic zooming for web applications. Sjoerd van Roosmalen (2008).
- Creating linksCollab: an assessment of Links as a web development language. Steve Strugnell (2008).
- Compilation of Effect Handlers and their Applications in Concurrency. Daniel Hillerström (2016).
- Handlers for Algebraic Effects in Links. Daniel Hillerström (2015).
- Functional reactive animation in SVG for the web via Links . Chi-Feng Chou (2011).
- Implementing the Java Pet Store in Links: An assessment of Links as an effective platform for building web applications . Gabriel Tellez (2008).
- Building biological database applications using Links. Ravi Shankar Dangeti (2008).
- The SLinks language. Gilles Dubochet (2005).
- Austėja Elvina Brasiūnaitė, Summer 2014. Elvina helped us to develop session types in Links by building and testing lots of examples.
- Gabriel Radanne, Summer 2012. Gabriel extended the Links to OCaml compiler developed by Steven Holmes to handle database queries.