normalize

Normalize a scientific number by dividing out powers of 10 from the coefficient and incrementing the base10Exponent each time. You should rarely have a need for this function since scientific numbers are automatically normalized when pretty-printed and in toDecimalDigits.
Normalize a Metric functor to have unit norm. This function does not change the functor if its norm is 0 or 1.
Obtains a vector in the same direction with 2-norm=1
If normalize contains Enabled, normal vectors specified with normal are scaled to unit length after transformation. The initial value of normalize is Disabled.
Reduce an expression to its normal form, performing beta reduction normalize does not type-check the expression. You may want to type-check expressions before normalizing them since normalization can convert an ill-typed expression into a well-typed expression. normalize can also fail with error if you normalize an ill-typed expression
It's also helpful to put a polynomial in canonical form. normalize strips leading coefficients that are zero.
Remove zero chunks.
scale a quaternion into a unit quaternion
Normalize a string according to the specified normalization mode.
Normalize a string using the given normalization mode.
Normalize an IPv4Range. The first result of this is that the IPv4 inside the IPv4Range is changed so that the insignificant bits are zeroed out. For example:
>>> IPv4.printRange $ IPv4.normalize $ IPv4.IPv4Range (IPv4.fromOctets 192 168 1 19) 24
192.168.1.0/24

>>> IPv4.printRange $ IPv4.normalize $ IPv4.IPv4Range (IPv4.fromOctets 192 168 1 163) 28
192.168.1.160/28
The second effect of this is that the mask length is lowered to be 32 or smaller. Working with IPv4Ranges that have not been normalized does not cause any issues for this library, although other applications may reject such ranges (especially those with a mask length above 32). Note that normalize is idempotent, that is:
IPv4.normalize r == (IPv4.normalize . IPv4.normalize) r
Normalize an IPv6Range. The first result of this is that the IPv6 inside the IPv6Range is changed so that the insignificant bits are zeroed out. For example:
>>> addr1 = IPv6.ipv6 0x0192 0x0168 0x0001 0x0019 0x0000 0x0000 0x0000 0x0000

>>> addr2 = IPv6.ipv6 0x0192 0x0168 0x0001 0x0163 0x0000 0x0000 0x0000 0x0000

>>> IPv6.printRange $ IPv6.normalize $ IPv6.IPv6Range addr1 24
192:100::/24

>>> IPv6.printRange $ IPv6.normalize $ IPv6.IPv6Range addr2 28
192:160::/28
The second effect of this is that the mask length is lowered to be 128 or smaller. Working with IPv6Ranges that have not been normalized does not cause any issues for this library, although other applications may reject such ranges (especially those with a mask length above 128). Note that 'normalize is idempotent, that is:
IPv6.normalize r == (IPv6.normalize . IPv6.normalize) r
sort sorts a list of coinciding events, that is all events but the first one have time difference 0. normalize sorts all coinciding events in a list thus yielding a canonical representation of a time ordered list.
sort sorts a list of coinciding events, that is all events but the first one have time difference 0. normalize sorts all coinciding events in a list thus yielding a canonical representation of a time ordered list.
Sort coincident elements.
Perform both normalizeCase and normalizeRoot on the given Domain. When comparing DNS names taken from user input, this is often necessary to avoid unexpected results. Examples:
>>> let domain1 = BS.pack "ExAmPlE.COM"

>>> let domain2 = BS.pack "example.com."

>>> domain1 == domain2
False

>>> normalize domain1 == normalize domain2
True
The normalize function should be idempotent:
>>> normalize (normalize domain1) == normalize domain1
True
Ensure that we don't crash on the empty Domain:
>>> import qualified Data.ByteString.Char8 as BS

>>> normalize BS.empty
"."
The constructor function to build a NormalizedText value. You probably shouldn't be using this module directly, but if for some reason you are using it, then you should be using this function to create NormalizedText values.
Return a vector with the same origin and orientation (angle), but such that the norm is one (the unit for multiplication by a scalar).
Return a vector with the same origin and orientation (angle), but such that the norm is one (the unit for multiplication by a scalar).
Perform Unicode normalization on a UTF8 encoded ByteString according to the specified normalization mode.
Perform Unicode normalization on Text according to the specified normalization mode.