DEV Community

Discussion on: Um errinho em Elixir

Collapse
 
elixir_utfpr profile image
Elixir UTFPR (por Adolfo Neto) • Edited

Eu chamaria apenas de "decisão errada". O fato de ter vindo de Erlang ou não pouco importa.

Erlang não tem um Enum, certo? O mais próximo de Enum, mas que é conceitualmente diferente, é lists.

Não faz diferença no que eu considero "erro" o fato da documentação da função Enum.at descrever exatamente o que ela faz. Não é um bug.

O "erro" (sempre entre aspas) se repete em Elixir no módulo List, nas funções delete_at, pop_at e provavelmente outras.

Nada que me impeça de amar Elixir.

Collapse
 
rhamorim profile image
Roberto Amorim

Acesso a arrays baseado em zero não é erro - é um legado da forma como se indexa em C. É uma consequência da forma como "aritmética de ponteiros" funciona, e que é - pra quem trabalha com C e outras linguagens mais "perto do metal" - a maneira mais "natural" de pensar nesse tipo de indexação.

Em outras palavras: não é um erro, é uma escolha. Pode-se até argumentar que seja uma escolha ruim (ou que seja anacrônica ou contraproducente numa linguagem mais "abstrata"), mas é uma escolha que tem razão de existir e vários argumentos a favor (e contra).

Thread Thread
 
elixir_utfpr profile image
Elixir UTFPR (por Adolfo Neto) • Edited