It's actually possible to do this without use of the SortA( command so long as all the elements of the list are greater than 0.

```
seq(sum(0>L₁-X),X,1,max(L₁)+1)+1
ΔList(Ans
1+sum(not(cumSum(Ans=max(Ans
// Generate a sequence of the counts of the numbers less than X from X=1 to the max of the list+1.
// take the deltalist to generate the individual counts of the numbers
// find the position of the highest count in Ans. That will be equal to the integer mode
```

However, Multi-modal can be difficult. The code below returns a list of 0's and 1's where all the 1's are the indices equivalent to each mode. For example, an output of {0,0,1,0,0,0,1,0} would be multi-modal with a mode of {3,7}. However, I don't have the time right now to write the code to find the indices of all elements greater than 0.

```
seq(sum(0>L₁-X),X,1,max(L₁)+1)+1
ΔList(Ans
1=(Ans-(max(Ans)-1
```

Edit: I found more time

See the following commented and uncommented codes:

```
seq(sum(0>L₁-X),X,1,max(L₁)+1)+1
ΔList(Ans
1=(Ans-(max(Ans)-1
seq(XAns(X),X,1,dim(Ans→L₂
While not(A>dim(L₂
1+sum(not(cumSum(L₂=0→A
seq(L₂(A+(A≥Ans)),A,1,dim(L₂)-1→L₂
End
L₂
```

```
//count the elements less than X from X=1 to the max of the list +1
seq(sum(0>L₁-X),X,1,max(L₁)+1)+1
// generate individual counts of each number
ΔList(Ans
// subtract the maximum of the list-1 and return a binary list where the index is equal to a mode
1=(Ans-(max(Ans)-1
// convert the list into its indices, only where the value is non-zero
seq(XAns(X),X,1,dim(Ans→L₂
//While A is not more than dim L2
While not(A>dim(L₂
//find the index of the first 0 in the list. If there is no 0, return 1+dim(L2
1+sum(not(cumSum(L₂=0→A
//remove the 0
seq(L₂(A+(A≥Ans)),A,1,dim(L₂)-1→L₂
//repeat until no 0's exist in the list
End
//display the modes
L₂
```