Earlier quoted context omitted.
Lisp usually has a lot of non-list data structures like arrays. records, strings, classes/objects, hashtables, ... For some data structures there is built-in syntax and with an extensible reader (the extensible parser for s-expressions) the user can add additional syntax. Janet uses a non-extensible parser for the data syntax. What Janet makes a 'not really a Lisp' is that "LISP" stands for "List Processor". Janet is…
An array is just a different way to implement a list data structure.
CL-USER 40 > (rest '(1 2 3))
(2 3)
Above REST operation does not allocate any memory. CL-USER 41 > (subseq '#(1 2 3) 1)
#(2 3)
Above SUBSEQ returns a new vector. Alternatively it would need a more clever implementation underneath.OTOH getting a random element has a different complexity in a linked list vs. a vector.