Version 6 of lrange

Updated 2010-10-23 16:37:05 by dkf

The lrange command returns one or more adjacent elements from a list.
http://www.purl.org/tcl/home/man/tcl8.5/TclCmd/lrange.htm

lrange list first last

List must be a valid Tcl list. This command will return a new list consisting of elements first through last, inclusive. First or last may be end (or any abbreviation of it) to refer to the last element of the list. If first is less than zero, it is treated as if it were zero. If last is greater than or equal to the number of elements in the list, then it is treated as if it were end. If first is greater than last then an empty string is returned. Note: “lrange list first first” does not always produce the same result as “lindex list first” (although it often does for simple fields that aren't enclosed in braces); it does, however, produce exactly the same results as “list [lindex list first]

lrange $x 0 end may be used to force a list x to have list (as opposed to string) representation - this enhances performance in some situations.

LV To get the benefits of this, do I need to assign the lrange value to x? Is there a comparison of the various techniques for forcing a string to be a list with regards to performance - is lrange the fastest?