Реализация протокола путем делегирования существующим функциям

Я изучаю эликсир, моделируя настольную игру, и у меня есть этот код

defprotocol Board do
  def can_handle_move(self)
  def handle_move(self, move)
end

defimpl Board, for: List do
  def can_handle_move(self), do: Enum.empty?(self)
  def handle_move(self, move), do: List.delete(self, move)
end

Реализация выглядит сложнее, чем на самом деле. На самом деле,can_handle_move простоEnum.empty? а такжеhandle_move простоList.delete, У Эликсира есть способ выразить это? Что-то вроде:

defimpl Board, for: List do
  def can_handle_move = &Enum.empty?/1
  def handle_move = &List.delete/2
end

... который нет компилировать. Я'мы также пытались безdefs.

Ответы на вопрос(1)

Ваш ответ на вопрос