language prototype