2013-11-30 2 views
2

Есть некоторые конструкции Erlang, которые я хотел бы использовать внутри кода Elixir. Одним из них является понимание списка Эрланг.Смешивание эликсира и Эрланг?

Мой общий вопрос: есть ли способ «спуститься» к написанию кода Erlang во время кодирования в Elixir (вроде того, как вы видите, как люди внедряют C в Ruby или TCL или что-то еще). Мой конкретный вопрос (связанный с общим) заключается в том, возможно ли мне как-то получить понимание списка стиля Erlang при кодировании в Elixir.

Если это невозможно с помощью простого эликсира, возможно, это можно сделать с помощью макроса (возможно, это сложно?)? Я понимаю, что могу просто написать модуль Erlang и назвать его из Elixir, но это не совсем то, что я ищу.

+1

Написание Erlang-in-Elixir только смущает тех, кто не знает оба языка хорошо (и не знаком с вашим конкретным стилем). Никогда не делай этого. – vonbrand

+0

Пожалуйста, закройте вопрос, нет причин для закрытия вообще (не более) – mit

ответ

7

Сегодня не существует механизма для инлайн Эрланг в Эликсире. Если вы подумаете об этом, даже простые соображения списка будут довольно сложными, потому что переменная в Elixir следует различным соглашениям об обсадной колонне, чем Erlang. Таким образом, вам нужно будет преобразовать значения, и это, вероятно, будет настолько подробным до такой степени, что оно не будет достойным.

Особого понимания было бы трудно быть более «erlangy», но, возможно, некоторые из ваших других жалоб можно было бы решить. Однако нам нужно будет обсуждать их в каждом конкретном случае.

Я согласен, что некоторые механизмы в Elixir немного более подробные, чем Erlang (определения функций - это мой личный питомец) и наоборот. Но трудно положить все в одно и то же ведро, что-то должно дать в какой-то момент. :)

+1

Я тоже с вами на определениях функций :) У меня не обязательно есть «жалобы» как таковые - больше «домашних животных». Мне понравилось, что, когда я изучал язык дальше, я узнал, что некоторые вещи выглядят так, как они делают для метапрограммирования и других хороших вещей, которые мы получаем, а не только потому, что это будет выглядеть как рубин (не то, чтобы что-то не так с рубином). Это тот же дизайн, который я бы сделал. Во всяком случае, да, кое-что должно дать в какой-то момент. Мой вклад заключается в том, чтобы сделать вещи как можно более подробными в рамках целей разработки, с которыми вы работаете. Помимо этого, поздравляю. – user1992634

+0

Разве это не должно быть «списком понятий» вместо «как понимание»? –

+0

Спасибо, Фрэнк, исправлено. –

Смежные вопросы