This is the second version of StringExpression.
The StringExpression parses expression from string!
$a to get variable that named a
Custom code: {(i) => $i*2}
*There's no avaiable function...*
Invaild expression
behaves="156" data = arr(-1, -1, -1, -1, -1, -1, -1, -1, -1) behaveCount = ifelse(0, map(strtoarr($behaves), {(b, i) => fif(eq(arrget($data, $b-1), -1), {(a) => arrset($data, $b-1, $i%2)})}), len($behaves)) boardData = arr(arr(arrget($data, 0), arrget($data, 1), arrget($data, 2)), arr(arrget($data, 3), arrget($data, 4), arrget($data, 5)), arr(arrget($data, 6), arrget($data, 7), arrget($data, 8))) board = map($boardData, {(r) => arrtostr(map($r, {(b) => ifelse(eq($b, -1), ".,.", ifelse($b, "O", "X"))}))}) r1 = arrget($board, 0) r2 = arrget($board, 1) r3 = arrget($board, 2) xWin = or( and(eq(arrget($data, 0), 0), eq(arrget($data, 1), 0), eq(arrget($data, 2), 0)), and(eq(arrget($data, 3), 0), eq(arrget($data, 4), 0), eq(arrget($data, 5), 0)), and(eq(arrget($data, 6), 0), eq(arrget($data, 7), 0), eq(arrget($data, 8), 0)), and(eq(arrget($data, 0), 0), eq(arrget($data, 4), 0), eq(arrget($data, 8), 0)), and(eq(arrget($data, 2), 0), eq(arrget($data, 4), 0), eq(arrget($data, 6), 0)) ) oWin = or( and(eq(arrget($data, 0), 1), eq(arrget($data, 1), 1), eq(arrget($data, 2), 1)), and(eq(arrget($data, 3), 1), eq(arrget($data, 4), 1), eq(arrget($data, 5), 1)), and(eq(arrget($data, 6), 1), eq(arrget($data, 7), 1), eq(arrget($data, 8), 1)), and(eq(arrget($data, 0), 1), eq(arrget($data, 4), 1), eq(arrget($data, 8), 1)), and(eq(arrget($data, 2), 1), eq(arrget($data, 4), 1), eq(arrget($data, 6), 1)) ) message=ifelse(and($xWin, $oWin), "Draw?", ifelse(not(or($xWin, $oWin)), "In game...", ifelse($xWin, "X win!", "O win!")))
Invaild expression