Overview  Index  Help 
Standard ML Basis Library

LIST

All Known Implementing Modules:

List


signature LIST =
sig
  datatype 'a list = nil | :: of 'a * 'a list
  exception Empty
  val null : 'a list -> bool
  val hd : 'a list -> 'a
  val tl : 'a list -> 'a list
  val last : 'a list -> 'a
  val getItem : 'a list -> ('a * 'a listoption
  val nth : 'a list * int -> 'a
  val take : 'a list * int -> 'a list
  val drop : 'a list * int -> 'a list
  val length : 'a list -> int
  val rev : 'a list -> 'a list
  val @ : 'a list * 'a list -> 'a list
  val concat : 'a list list -> 'a list
  val revAppend : 'a list * 'a list -> 'a list
  val app : ('a -> unit) -> 'a list -> unit
  val map : ('a -> 'b) -> 'a list -> 'b list
  val mapPartial : ('a -> 'b option) -> 'a list -> 'b list
  val find : ('a -> bool) -> 'a list -> 'a option
  val filter : ('a -> bool) -> 'a list -> 'a list
  val partition : ('a -> bool) -> 'a list -> 'a list * 'a list
  val foldr : ('a * 'b -> 'b) -> 'b -> 'a list -> 'b
  val foldl : ('a * 'b -> 'b) -> 'b -> 'a list -> 'b
  val exists : ('a -> bool) -> 'a list -> bool
  val all : ('a -> bool) -> 'a list -> bool
  val tabulate : int * (int -> 'a) -> 'a list
  val collate : ('a * 'a -> order) -> 'a list * 'a list -> order
end

   
Datatype detail

list

datatype 'a list = nil | :: of 'a * 'a list

 
DataConstructor detail

nil

constructor nil : 'a list


::

constructor :: : 'a * 'a list -> 'a list

 
Value detail

null

val null : 'a list -> bool


hd

val hd : 'a list -> 'a


tl

val tl : 'a list -> 'a list


last

val last : 'a list -> 'a


getItem

val getItem : 'a list -> ('a * 'a listoption


nth

val nth : 'a list * int -> 'a


take

val take : 'a list * int -> 'a list


drop

val drop : 'a list * int -> 'a list


length

val length : 'a list -> int


rev

val rev : 'a list -> 'a list


@

val @ : 'a list * 'a list -> 'a list


concat

val concat : 'a list list -> 'a list


revAppend

val revAppend : 'a list * 'a list -> 'a list


app

val app : ('a -> unit) -> 'a list -> unit


map

val map : ('a -> 'b) -> 'a list -> 'b list


mapPartial

val mapPartial : ('a -> 'b option) -> 'a list -> 'b list


find

val find : ('a -> bool) -> 'a list -> 'a option


filter

val filter : ('a -> bool) -> 'a list -> 'a list


partition

val partition : ('a -> bool) -> 'a list -> 'a list * 'a list


foldr

val foldr : ('a * 'b -> 'b) -> 'b -> 'a list -> 'b


foldl

val foldl : ('a * 'b -> 'b) -> 'b -> 'a list -> 'b


exists

val exists : ('a -> bool) -> 'a list -> bool


all

val all : ('a -> bool) -> 'a list -> bool


tabulate

val tabulate : int * (int -> 'a) -> 'a list


collate

val collate : ('a * 'a -> order) -> 'a list * 'a list -> order

 
Exception detail

Empty

exception Empty


Overview  Index  Help 
Standard ML Basis Library

This document may be distributed freely over the internet as long as the copyright notice and license terms below are prominently displayed within every machine-readable copy.

Copyright © 2003 AT&T and Lucent Technologies. All rights reserved.

Permission is granted for internet users to make one paper copy for their own personal use. Further hardcopy reproduction is strictly prohibited. Permission to distribute the HTML document electronically on any medium other than the internet must be requested from the copyright holders by contacting the editors. Printed versions of the SML Basis Manual are available from Cambridge University Press. To order, please visit www.cup.org (North America) or www.cup.cam.ac.uk (outside North America).