history and purpose

Java

C