Crack aims to provide the ease of development of a scripting language with the performance of a compiled language. The "crack" program is a "script executor" that compiles source to machine code on the fly (it will cache the code to intermediate formats as appropriate).
The crack language itself derives concepts from C++, Java and Python, incorporating object-oriented programming, operator overloading and strong typing.
News
2025-11-02 Fresh Upgrades
The autoconf setup has been updated and a new version of crack.regex2 has been introduced which uses libpcre2 (libpcre3 is actually an older library that is EOL and being removed from distros).
2020-01-17 Crack 1.6 Released!
We're proud to report the release of crack 1.6. Download source from here.
Sample Code
This script builds a set of unique values from the argument list and prints its contents.
import crack.cont.hashmap HashMap;
import crack.io cout;
import crack.strutil StringArray;
import crack.sys argv;
class ArgSet : HashMap[String, bool] {
oper init(StringArray args) {
for (arg :in args)
this[arg] = true;
}
void dump() {
for (item :in this)
cout `got $(item.key)\n`;
}
}
ArgSet a = {argv};
a.dump();