Skip to content

Instantly share code, notes, and snippets.

@evantravers
Created August 21, 2018 17:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save evantravers/58e616aa50a47eb1c113c8111fcd19d2 to your computer and use it in GitHub Desktop.
Save evantravers/58e616aa50a47eb1c113c8111fcd19d2 to your computer and use it in GitHub Desktop.
def sieve(n) when is_integer(n), do: sieve(Enum.to_list(2..n), [1])
def sieve([], result), do: Enum.reverse(result)
def sieve([prime|tail], result) do
tail
|> Enum.reject(& rem(&1, prime) == 0)
|> sieve([prime|result])
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment