On this page:
Seashell:   An Online Integrated Development Environment
3.0.10 (HEAD-8fd80004)

Seashell: An Online Integrated Development Environment

Edward Lee <e45lee@uwaterloo.ca>,
Jacob Pollack <jpollack@uwaterloo.ca>,
Kaleb Alway <kpalway@uwaterloo.ca>,
Bryan Coutts <b2coutts@uwaterloo.ca>,
and Graham Cooper <grcooper@uwaterloo.ca>

Seashell is an online integrated development environment, primarily used at the University of Waterloo as the main development environment for students taking CS 136.

Each course that uses Seashell has its own Seashell instance. The link to Seashell for a course can be found on that course’s website. As of Fall 2018, the only courses with a Seashell instance are CS 136 and CS 145.

This documentation is current for version 3.0.10 (HEAD-8fd80004), and only describes API calls present in API version 7.

    1 User Documentation

      1.1 Getting Started

        1.1.1 Projects

        1.1.2 Editing Files

        1.1.3 Running Files

        1.1.4 Programs that Require Input

        1.1.5 Testing I/O Programs/Modules

        1.1.6 Submitting to Marmoset

        1.1.7 Settings

        1.1.8 Logging Out

      1.2 Frequently Asked Questions

        1.2.1 What does error code ___ mean?

        1.2.2 Why can’t I delete a question/assignment in Seashell?

        1.2.3 I am trying to submit to Marmoset through Seashell, but the Marmoset projects are not in the list. Why?

        1.2.4 How do I submit multiple files to Marmoset?

        1.2.5 I’ve tried evaluating Racket expressions in the console, but it is not accepting them. Why?

        1.2.6 An instructor has reported that a Seashell skeleton has been released, but it’s not appearing in my list of Seashell Assignments. What’s going on?

        1.2.7 When I open up Seashell I only see a blank screen. What do I do?

      1.3 Seashell Common Errors

      1.4 Common Error Codes

        1.4.1 Code 0 - Successful Completion

        1.4.2 Error code 1 - General Error

        1.4.3 Error code 134 - Program Abort

        1.4.4 Error code 136 - Erroneous Arithmetic Operation

        1.4.5 Error code 139 - Segmentation Fault

        1.4.6 Error code 255 - Program Timed Out

    2 Administrator Documentation

      2.1 Installing Seashell

      2.2 Configuring Seashell

        2.2.1 etc/seashell_config.rkt

          2.2.1.1 Organization

          2.2.1.2 Options

        2.2.2 etc/seashell_hosts

    3 Developer Documentation

      3.1 Logistics

        3.1.1 Dependencies

          3.1.1.1 System-Provided Dependencies

          3.1.1.2 Integrated Dependencies

        3.1.2 Downloading Source

        3.1.3 Building from Source

        3.1.4 Layout

          3.1.4.1 Libraries - /lib

          3.1.4.2 Backend Support Source Files - /src/backend

          3.1.4.3 Backend Server - /src/collects

          3.1.4.4 Fronted - /src/frontend

          3.1.4.5 Fronted Testing - /src/tests/frontend-tests

      3.2 Support Libraries

        3.2.1 Compiler Support Library

          3.2.1.1 Types

          3.2.1.2 Creating and Deleting Compiler Instances

          3.2.1.3 Manipulating Compiliation Files and Flags

          3.2.1.4 Error Reporting

          3.2.1.5 Running the Compiler

    4 Release Notes

      4.1 v.2.4.1

      4.2 v.2.4.0

      4.3 v.2.5.0

      4.4 v.2.5.1

      4.5 v.2.5.2

      4.6 v.2.5.3

      4.7 v.2.5.4

      4.8 v.2.5.5

      4.9 v.2.5.6

      4.10 v.2.5.7

      4.11 v.2.5.8

      4.12 v.3.0.0

      4.13 v.3.0.1

      4.14 v.3.0.2

      4.15 v.3.0.3

      4.16 v.3.0.4

      4.17 v.3.0.6

    Index