Welcome! Please see the About page for a little more info on how this works.
Stemming from a conversation on slack, I learned that list is not a function created with fn* but an instance of the class clojure.lang.PersistentList$Primordial. This leads to inconsistencies, such as (vary-meta list assoc :hello :world) throwing an error instead of returning an AFunction with metadata. Reading through the git history, it looks like this approach was chosen very early (commit "made list return a PersistentList, not a seq").
list
fn*
clojure.lang.PersistentList$Primordial
(vary-meta list assoc :hello :world)
AFunction
Is there a reason why this approach was taken versus a create(ISeq args) overload like vector and hash-map?
create(ISeq args)
vector
hash-map
Probably only known to Rich, don't think these inconsistencies are important.