96 : !is_undef( v[i] ) ? v[i]
116 : !is_undef( v[i] ) ? v[i]
134 ) = (is_num(v) || is_bool(v)) ? v
136 : !is_undef( v[i] ) ? v[i]
156 : let ( w =
first ( v ) )
157 !is_undef( w[i] ) ? w[i]
179 ? is_undef( n ) ? v[i]
180 : (len( v[i] ) == n) ? v[i]
198 : [
for (j = [0 : len(v)-1])
if (v[j] == mv) j ];
279 : (!is_undef(i2) && (i1 > i2)) ?
empty_lst
281 : ((is_undef(i) && (v[i1] == mv)) || (v[i1][i] == mv)) ?
284 : concat(i1,
find(mv, v, c-1, i, i1+1, i2))
286 :
find(mv, v, c, i, i1+1, i2);
311 ) = (s ==
false) ? len(
find(mv, v, 0, i))
312 : len(
merge_s(search(mv, v, 0, i)));
375 function first( v ) = v[0];
389 function second( v ) = v[1];
403 function third( v ) = v[2];
449 : (len(v) < 2) ? undef
468 : (len(v) < 3) ? undef
469 : [v[0], v[1], v[2]];
501 : [v[l-3], v[l-2], v[l-1]];
524 : let ( s = min(n-1, len(v)-1) )
525 [
for (i = [0 : s]) v[i]];
548 : let ( s = max(0, len(v)-n) )
549 [
for (i = [s : len(v)-1]) v[i]];
570 : let ( s = min(len(v)-1, len(v)-1-n) )
571 [
for (i = [0 : s]) v[i]];
592 : [
for (i = [max(0, n) : len(v)-1]) v[i]];
608 : [
for (i = [len(v)-1 : -1 : 0]) v[i]];
643 [
if (m && !d)
for (i = [l-m : l-1]) v[i],
for (i = [0 : l-1-m]) v[i] ]
645 : [
for (i = [m : l-1]) v[i],
if (m && !d)
for (i = [0 : m-1]) v[i] ];
678 ( s > l-1 ) ? is_undef(i) ?
consts(l, u=
true) :
consts(l, i)
682 [ if (m) for (j = [0 : s-1]) i, for (j = [0 : l-1-m]) v[j] ]
684 : [ for (j = [m : l-1]) v[j], if (m) for (j = [0 : s-1]) i ];
704 : is_list(i) && ((min([
for (y=i) y])<0) || (max([
for (y=i) y])>(len(v)-1))) ? undef
705 :
is_range(i) && ((min([
for (y=i) y])<0) || (max([
for (y=i) y])>(len(v)-1))) ? undef
707 [
for (j = [
for (k=s) k]) v[j]];
740 for (i=[0 : s : (len(v)-((w ==
true) ? 1 : n)) ])
742 for (j=[i : (i+n-1)])
776 concat ( with_first, without_first );
800 i = [0 : len(v) - 1],
884 :
is_empty(v) ? ((j ==
true) ? [concat(nv)] : concat(nv))
893 (j == true && l == true ) ? [concat(ce, nv)]
894 : (j == true && l == false) ? [ce]
895 : (j == false && l == true ) ? concat(ce, nv)
898 : (j == true) ? concat( [concat(ce, nv)],
append_e(nv,
tailn(v), r, j, l) )
899 : concat( concat(ce, nv) ,
append_e(nv,
tailn(v), r, j, l) );
931 [
for (j = [0 : s-1]) nv,
for (j = v) j ]
933 : [
for (j = v) j,
for (j = [0 : s-1]) nv ];
981 : (
is_empty(v) && ( (i != 0) || !is_undef(mv)) ) ? undef
988 ( s == false ) ?
find(mv, v, 0, si)[mi]
989 :
merge_s(search(mv, v, 0, si), false)[mi]
994 h = ( !is_undef(p) && (p>0) ) ? [for (j = [0 : p-1]) v[j]] :
empty_lst,
996 t = ( is_undef(p) || (p>len(v)-1) ) ?
empty_lst : [for (j = [p : len(v)-1]) v[j]]
999 is_undef(p) ? undef : concat(h, nv, t);
1025 q = (mc == 0) ? p :
firstn(p, mc)
1028 for (j = [0 : len(v)-1])
1097 : is_list(i) && ((min([
for (y=i) y])<0) || (max([
for (y=i) y])>(len(v)-1))) ? undef
1098 :
is_range(i) && ((min([
for (y=i) y])<0) || (max([
for (y=i) y])>(len(v)-1))) ? undef
1103 ( s == false ) ?
find(mv, v, mc, si)
1114 for (j = [0 : len(v)-1])
1144 q = (mc == 0) ? p :
firstn(p, mc)
1147 for (j = [0 : len(v)-1])
1167 : [
for (e = v)
if (e != mv) e];
1199 ) = is_undef(m) ?
headn(v, 0)
1209 j = ((r == true) ? l - len(m) : 0) + o
1212 for (i = [0 : len(m)-1])
1260 ) = let( mv =
first(v1) )
empty_lst
<list> A list with no values (the empty list).
function headn(v, n=1)
Return a list containing all but the last n elements of an iterable value.
function firstn(v, n=1)
Return a list containing the first n elements of an iterable value.
function unique(v)
Return a list of the unique elements of an iterable value.
function select_r(v, i)
Select a range of elements from an iterable value.
function append_e(nv, v, r=true, j=true, l=true)
Append a value to each element of an iterable value.
function find(mv, v, c=1, i, i1=0, i2)
Find the occurrences of a match value in an iterable value.
function defined_ei_or(v, i, d, n)
Returns an element from an iterable if it exists and is a iterable, otherwise returns a default value...
function first3(v)
Return a list containing the first three elements of an iterable value.
function defined_eonb_or(v, i, d)
Returns the list element or scalar numeric or boolean value if defined, otherwise returns the default...
function first2(v)
Return a list containing the first two elements of an iterable value.
function defined_e_or(v, i, d)
Returns an element from an iterable if it exists, or a default value if not.
function last3(v)
Return a list containing the last three elements of an iterable value.
function delete_first(v, mv, mc=1)
Delete the first occurrence(s) of a matched value from an iterable value.
function third(v)
Return the third element of an iterable value.
function last(v)
Return the last element of an iterable value.
function exists(mv, v, s=true, i)
Check for the existence of a match value in an iterable value.
function count(mv, v, s=true, i)
Count all occurrences of a match value in an iterable value.
function not_common(v1, v2)
Return a list of the elements not present in both iterable values.
function insert(nv, v, i=0, mv, mi=0, s=true, si)
Insert a new value into an iterable value.
function exists_e(i, v)
Test if an element exists at a specified index of an iterable value.
function find_all(mv, v)
Find all occurrences of a match value in an iterable value.
function mask(v, m, r=false, o=0, u=undef, z=0)
Apply a binary mask to an interable value.
function defined_fle_or(v, i, d)
Return the first defined specified element in a list of lists, otherwise returns the given default va...
function combine_ns(v, n)
Return all n-sized set combinations of iterable value.
function strip(v, mv=empty_lst)
Strip all matching values from an iterable value.
function second(v)
Return the second element of an iterable value.
function permute_ns(v, n)
Return all ordered n-sized set permutations of iterable value.
function defined_eon_or(v, i, d)
Returns the list element or scalar numeric value if defined, otherwise returns the default value.
function lastn(v, n=1)
Return a list containing the last n elements of an iterable value.
function middle(v)
Return the middle element of an iterable value.
function delete(v, i, mv, mc=1, s=true, si)
Delete elements from an iterable value.
function replace_first(v, mv, nv, mc=1)
Replace the first occurrence(s) of a matched value in iterable value.
function first(v)
Return the first element of an iterable value.
function append_v(nv, v, n=0, r=false)
Append a value to the end or beginning of an iterable value.
function delete_each(v, mv)
Delete each match value from an iterable value.
function permute_ns_r(v, n)
Return all ordered n-size set permutations of iterable value with repetition allowed.
function sequence_ns(v, n=1, s=1, w=false)
Return a list of all n-element sequential-subsets of an iterable value.
function shift_ci(v, n=0, r=true, i)
Shift-in a value to the elements of a given iterable value.
function shift_cd(v, n=0, r=true, d=false)
Circularly shift the elements of an iterable, with an optional element drop.
function common(v1, v2, e=empty_lst)
Return a list of the common elements of two iterable values.
function last2(v)
Return a list containing the last two elements of an iterable value.
function tailn(v, n=1)
Return a list containing all but the first n elements of an iterable value.
function reverse(v)
Reverse the elements of an iterable value.
function all_defined(v)
Test if no element of an iterable value has an undefined value.
function is_iterable(v)
Test if a value has multiple parts and is iterable.
function is_empty(v)
Test if an iterable value is empty.
function consts(l, v, u=false)
Create a list of constant or incrementing elements.
function merge_s(v, r=false)
Serially merge the elements of a list.
function is_between(v, l, u)
Test if a numerical value is between an upper and lower bounds.
function is_defined(v)
Test if a value is defined.
function is_number(v)
Test if a value is a number.
function is_range(v)
Test if a value is a range definition.