]> gitweb.factorcode.org Git - factor.git/commitdiff
lists: Add list literals.
authorDoug Coleman <doug.coleman@gmail.com>
Sat, 14 Jul 2018 01:36:07 +0000 (20:36 -0500)
committerJohn Benediktsson <mrjbq7@gmail.com>
Wed, 16 Oct 2019 16:10:41 +0000 (09:10 -0700)
Fixes #2019.

basis/lists/lists.factor
basis/prettyprint/backend/backend.factor

index 8bb8b73ea6d362e5e38c4ee48c4d5409db38509d..206752f7cacf3118b499ff74ca3d3dfeda933cdc 100644 (file)
@@ -1,7 +1,7 @@
 ! Copyright (C) 2008 James Cash, Daniel Ehrenberg, Chris Double.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: accessors combinators.short-circuit kernel locals math
-sequences ;
+parser sequences ;
 IN: lists
 
 ! List Protocol
@@ -102,3 +102,7 @@ INSTANCE: +nil+ list
 GENERIC: >list ( object -- list )
 
 M: list >list ;
+
+M: sequence >list sequence>list ;
+
+SYNTAX: L{ \ } [ sequence>list ] parse-literal ;
\ No newline at end of file
index e2f58de6e25387c8d1bf867c5eebac391edc4f41..fd9ce81f0ffcbadeccc50d2e9224d0df7d3e8b04 100644 (file)
@@ -3,8 +3,8 @@
 USING: accessors arrays assocs byte-arrays byte-vectors classes
 classes.algebra.private classes.maybe classes.private
 classes.tuple combinators continuations effects generic
-hash-sets hashtables io.pathnames io.styles kernel make math
-math.order math.parser namespaces prettyprint.config
+hash-sets hashtables io.pathnames io.styles kernel lists make
+math math.order math.parser namespaces prettyprint.config
 prettyprint.custom prettyprint.sections prettyprint.stylesheet
 quotations sbufs sequences strings vectors words ;
 QUALIFIED: sets
@@ -213,6 +213,7 @@ M: array pprint-delims drop \ { \ } ;
 M: byte-array pprint-delims drop \ B{ \ } ;
 M: byte-vector pprint-delims drop \ BV{ \ } ;
 M: vector pprint-delims drop \ V{ \ } ;
+M: list pprint-delims drop \ L{ \ } ;
 M: hashtable pprint-delims drop \ H{ \ } ;
 M: tuple pprint-delims drop \ T{ \ } ;
 M: wrapper pprint-delims drop \ W{ \ } ;
@@ -227,6 +228,7 @@ M: object >pprint-sequence ;
 M: vector >pprint-sequence ;
 M: byte-vector >pprint-sequence ;
 M: callable >pprint-sequence ;
+M: list >pprint-sequence list>array ;
 M: hashtable >pprint-sequence >alist ;
 M: wrapper >pprint-sequence wrapped>> 1array ;
 M: callstack >pprint-sequence callstack>array ;
@@ -268,6 +270,7 @@ M: byte-vector pprint* pprint-object ;
     nesting-limit [ dup [ 1 + ] [ f ] if* ] change
     [ nesting-limit set ] curry finally ; inline
 
+M: list pprint* pprint-object ;
 M: hashtable pprint*
     [ pprint-object ] with-extra-nesting-level ;
 M: curried pprint* pprint-object ;