Crema is a programming language created in 2014 by Jacob Torrey and Jared Wright.
git clone https://github.com/ainfosec/crema
#1325on PLDB | 10Years Old |
Crema: A Sub-Turing Programming Language
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
}
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