A SetOrientedProgramming language based on set theory. Possibly contains the first instance of ListComprehensions. See http://www.setl.org/ .
The original version of SETL was first described in "Set Theory as a Language for Program Specification and Programming," written by J. Schwartz when he was working at IBM in the summer of 1969:
Anyone want to contrast it with RelationalLanguages and PrologLanguage?
While prolog has set-oriented predicates like set-of() and operations like union and intersection can be defined easily, the underlying structure representing the sets are lists, i.e. {a,b,c} would be [a,b,c] in prolog. SetL syntax is closer to SetTheory. Other "languages" like Maple and MathematicaLanguage have more set-theoretic features than prolog, which is more tied to logic using unification and backtracking. I would consider Mathematica etc to be the evolution of SetL. Back in those days Macsyma focused more on algebra and calculus SetL was better for playing with sets but modern mathematical computational systems combine all sorts of branches like GraphTheory, Combinatorics, Topology etc as well as SetTheory into one environment. ErlangLanguage is the evolution of prolog.
The full language specification is on-line at http://cs.nyu.edu/~bacon/setl/doc-legacy/setlprog.pdf A more recent variant, SETL2, supports ObjectOrientedProgramming, NestedScopes, and OperatorOverloading -- see http://www.setl.org/doc/ .
There is a SETL Wiki at http://www.setl-lang.org/wiki/ with links to various tutorials.
SETL was highly influential on other CollectionOrientedProgramming languages.