 
 
 /// Lists conform to NilLiteralConvertible.
-extension List : NilLiteralConvertible {
-	static func convertFromNilLiteral() -> List {
-		return .Nil
+extension List: NilLiteralConvertible {
+	init(nilLiteral: ()) {
+		self.init()
 	}
 }



/// Lists conform to Printable.
extension List : Printable {
	var description: String {
		let joined = join(" ", map(self) { "\($0)" })
		return "(\(joined))"

}


infix operator ++ { associativity right precedence 145 }

/// Concatenation of lists.
func ++ <Element> (left: List<Element>, right: List<Element>) -> List<Element> {
