Last updated at 2005/07/11 10:48:20 PDT by Temporal
This section contains a few real modules from Evlan so that you can easily see what Evlan code looks like. This code was written against the v0.3 prototype implementation; major changes are planned, so code may look somewhat different in the future. These are just raw code samples; they are not intended to be particularly educational.
evlan.org/utility/Sort
evlan.org/utility/Set
fateofio.org/manager/ServerManager
For a shorter example, here is a definition of the classic QuickSort algorithm.
quickSort = (elements, isBefore) => result where result = if elements.size <= 1 then elements else sortedElements sortedElements = Array.join({quickSort(parts[0], isBefore), {pivot}, quickSort(parts[1], isBefore)}) #Select a pivot, then call Array.group to group the other elements #around it. pivot = elements[0] rest = Array.getInterval(elements, 1, elements.size) parts = Array.group(rest, 2, i => if isBefore(rest[i], pivot) then 0 else 1)