<commit_before>%
% (c) The University of Glasgow 1992-2002
%
\section[Util]{Highly random utility functions}

\begin{code}
module Util (

	-- general list processing
	zipEqual, zipWithEqual, zipWith3Equal, zipWith4Equal,
        zipLazy, stretchZipWith,
	mapFst, mapSnd,
	mapAndUnzip, mapAndUnzip3,
	nOfThem, filterOut,
	lengthExceeds, lengthIs, lengthAtLeast, listLengthCmp, atLength,
	isSingleton, only, singleton,
	notNull, snocView,

	isIn, isn'tIn,

	-- for-loop
	nTimes,

	-- sorting
	sortLe, sortWith,

	-- transitive closures
	transitiveClosure,

	-- accumulating
	mapAccumL, mapAccumR, mapAccumB, 
	foldl2, count, all2,
	
	takeList, dropList, splitAtList, split,

	-- comparisons
	isEqual, eqListBy, equalLength, compareLength,
	thenCmp, cmpList, prefixMatch, suffixMatch, maybePrefixMatch,
	removeSpaces,

	-- strictness
	foldl', seqList,<commit_msg>Group exports so that all length functions are together; no semantic change<commit_after>%
% (c) The University of Glasgow 1992-2002
%
\section[Util]{Highly random utility functions}

\begin{code}
module Util (

	-- general list processing
	zipEqual, zipWithEqual, zipWith3Equal, zipWith4Equal,
        zipLazy, stretchZipWith,
	mapFst, mapSnd,
	mapAndUnzip, mapAndUnzip3,
	nOfThem, filterOut,

	lengthExceeds, lengthIs, lengthAtLeast, 
	listLengthCmp, atLength, equalLength, compareLength,

	isSingleton, only, singleton,
	notNull, snocView,

	isIn, isn'tIn,

	-- for-loop
	nTimes,

	-- sorting
	sortLe, sortWith,

	-- transitive closures
	transitiveClosure,

	-- accumulating
	mapAccumL, mapAccumR, mapAccumB, 
	foldl2, count, all2,
	
	takeList, dropList, splitAtList, split,

	-- comparisons
	isEqual, eqListBy, 
	thenCmp, cmpList, prefixMatch, suffixMatch, maybePrefixMatch,
	removeSpaces,

	-- strictness
	foldl', seqList,
{'fraction_non_alphanumeric': 0.09569110240626749, 'fraction_numerical': 0.014549524342473419, 'mean_word_length': 4.786407766990291, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5412722', 'n_tokens_mistral': 680, 'n_tokens_neox': 624, 'n_words': 158}