Skip to content

Instantly share code, notes, and snippets.

@orenbenkiki
orenbenkiki / Bug.jl
Created July 6, 2021 11:35
Julia Mixing Worker Processes and Threads Bug
using Distributed
@assert size(ARGS)[1] == 3
@assert ARGS[3] == "verbose" || ARGS[3] == "quiet"
local_processes = parse(Int, ARGS[1])
local_iterations = parse(Int, ARGS[2])
local_verbose = ARGS[3] == "verbose"
Distributed.addprocs(local_processes)
@orenbenkiki
orenbenkiki / enhanced_extension.ex
Last active February 21, 2022 22:29
Elixir module inheritance
defmodule Extension do
defmacro extends(module) do
# As above...
end
defmacro implements(module, protocol: protocol) do
quote do
defimpl unquote(protocol), for: unquote(module) do
import Extension