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


< >

Crema is a programming language created in 2014 by Jacob Torrey and Jared Wright.

#1348on PLDB 10Years Old
Download source code:
git clone

Crema is a LLVM front-end that aims to specifically execute in sub-Turing Complete space. Designed to be simple to learn, and practical for the majority of programming tasks needed, Crema can restrict the computational complexity of the program to the minimum needed to improve security.

Example from the web:
def int binarySearch(int values[], int searchTarget){ int upperBound = list_length(values) - 1 # Upper index of seach region int lowerBound = 0 # Lower index of seach region int delta = list_length(values) # Distance between upperBound and lowerBound int middleValueIndex = 0 # Mid-point index between upper and lower bounds int middleValue = 0 # Value at the mid-point index int foundIndex = -1 # The index of the target number after finding foreach(values as value){ # Check middle value to see if it matches target number middleValueIndex = ((upperBound + lowerBound) / 2) middleValue = values[middleValueIndex] if(middleValue == searchTarget){ foundIndex = middleValueIndex break } #Re-adjust the lower and upper bounds for next itteration if(middleValue >= searchTarget){ upperBound = middleValueIndex - 1 }else{ lowerBound = middleValueIndex + 1 } delta = upperBound - lowerBound } return foundIndex }
Crema Keywords
as bool break char def double else eq extern false foreach ge gt if int le lt neq return sdef string struct true uint void

View source

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