GPCE 2018
Mon 5 - Tue 6 November 2018 Boston, Massachusetts, United States
co-located with SPLASH 2018
Mon 5 Nov 2018 11:30 - 12:00 at Studio 2 - I Chair(s): Shoaib Kamil

Command languages like the Bourne Shell provide a terse syntax for exploratory programming and system interaction and administration, as well as a succinct and useful syntax for composing operating system processes. Shell users can begin to write programs to automate their tasks by simply copying their interactions verbatim into a script file. However, command languages usually scale poorly beyond small scripts, and can be difficult to integrate into larger programs. General purpose languages provide more scalability and generality. But their syntaxes are generally overly verbose, and their methods for common actions like process creation are too unweildy to be suitable as an interface for interactive system administration and general computer use.

We present Rash, a domain-specific command language embedded in Racket. Rash provides a terse and extensible syntax for interactive system administration and scripting, as well as easy composition of both Racket functions and operating system processes. Rash can embed normal Racket syntax within itself, and can be embedded at the expression or module level of normal Racket programs. Thus Rash provides an extended and gradual scale for creation, integration, and hardening of shell-style programs.

Mon 5 Nov

gpce-2018
10:30 - 12:00: GPCE 2018 - I at Studio 2
Chair(s): Shoaib KamilAdobe
gpce-201810:30 - 11:00
Talk
Karl SmeltzerOregon State University, Martin ErwigOregon State University
gpce-201811:00 - 11:30
Talk
Nicolas StuckiEPFL, Switzerland, Aggelos BiboudisEPFL, Switzerland, Martin OderskyEPFL, Switzerland
gpce-201811:30 - 12:00
Talk
William G HatchUniversity of Utah, Matthew FlattUniversity of Utah