>>6
Make your own statically typed "lisp" with type inferrence. It might be a fun project to work on.
However for real work, I'll take my mutable cons cells any day as they behave like real pointers and allow me to build ad-hoc data structures from linked lists, to association lists to pairs to sequences to trees to graphs. If I wanted cons cells which can only be used to make linked lists like you propose I'd be using a statically typed ML-like language, where the linked list can be defined like this:
type LinkedList = Cons of value * LinkedList | Nil;;
But since I'm using Lisp, it means I do make use of the dynamic typing.