Table of contents
Collapse the table of content
Expand the table of content

Seq.sortBy<'T,'Key> Function (F#)

Den Delimarsky|Last Updated: 8/18/2017
1 Contributor

Applies a key-generating function to each element of a sequence and yields a sequence ordered by keys. The keys are compared using generic comparison as implemented by

Namespace/Module Path: Microsoft.FSharp.Collections.Seq

Assembly: FSharp.Core (in FSharp.Core.dll)


// Signature:
Seq.sortBy : ('T -> 'Key) -> seq<'T> -> seq<'T> (requires comparison)

// Usage:
Seq.sortBy projection source


projection Type: 'T -> 'Key

A function to transform items of the input sequence into comparable keys.

source Type: seq<'T>

The input sequence.


ArgumentNullExceptionThrown when the input sequence is null.

Return Value

The result sequence.


This function returns a sequence that digests the whole initial sequence as soon as that sequence is iterated. Therefore, this function should not be used with large or infinite sequences. The function makes no assumption on the ordering of the original sequence. This is a stable sort, that is, the original order of equal elements is preserved.

This function is named SortBy in compiled assemblies. If you are accessing the function from a language other than F#, or through reflection, use this name.


Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Version Information

F# Core Library Versions

Supported in: 2.0, 4.0, Portable

See Also

Collections.Seq Module (F#)

Microsoft.FSharp.Collections Namespace (F#)

© 2020 Microsoft