Top 1,000 Features Creators Events Podcasts Extensions Blog Explorer CSV Download


< >

Avail is a programming language created in 2010 by Mark van Gulik and Todd L. Smith.

#1404on PLDB 14Years Old
Download source code:
git clone

Avail is a multi-paradigmatic general purpose programming language whose feature set emphasizes support for articulate programming.

Example from the web:
Public method "Play Wump the Wumpus with reader_with reporter_" is [ reader : []→string, writer : [string]→⊤ | /* Set up the game's I/O. */ Wump the Wumpus reader := reader; Wump the Wumpus reporter := writer; /* Create a new game. All references to game objects within the block are * implicitly understood as relative to this new game. */ newGame ::= a game of Wump the Wumpus; Use newGame as the implied game and do [ Welcome; Look around, having just entered; Until the game is over, do [ Give the agent a turn; Give the first swarm a turn; Give the second swarm a turn; Give the wumpus a turn; ]; If the agent is alive then [ If the wumpus is dead then [Report victory;] else [Report cowardice;]; ] else [Report defeat;]; Goodbye; ]; ] : ⊤;

View source

- Build the next great programming language · About · Resources · Acknowledgements · Part of the World Wide Scroll