Size: a a a

2020 June 25

ŹR

Źmićer Rubinštejn in pro.elixir
источник

LL

Lama Lover in pro.elixir
Солидный эликсир)
источник

V

V in pro.elixir
Юля
#вакансия #elixir #erlang #remote #удаленка #спб #релокация

🔎Elixir Senior Developer

We are looking for an experienced Elixir developer who will be working on core components of a system designed to reduce healthcare costs through drug cost transparency at the point of care.

Salary: ₽180 - 300k

Company:
🔹 Bekitzur — consulting development company with HQ in Silicon Valley and a product development center in Saint Petersburg.

Responsibilities:
🔹 Building an application for international customers
🔹 Extending test coverage
🔹 Cooperation with other project team members about features and implementation design

Required Skills and Experience:
🔹 5+ years of development experience; 1.5 + years of experience with Elixir / Phoenix framework
🔹Experience with RDBMS (PostgreSQL, MySQL, MS SQL)
🔹 Good knowledge of OOP and Design patterns
🔹 AWS experience EC2/Containerized application/Lambda/SQS/Aurora/RDS
🔹 Intermediate+ English to communicate by email and on conference calls

We offer you:
🔹 Work in a stable American company;
🔹 Interesting and challenging tasks;
🔹 Lack of legacy on the project;
🔹 Modern technology stack;
🔹 Relocation;
🔹 All goodies that a great company provides;
🔹 Full compliance with the Labor Code of the Russian Federation;
🔹 Flexible schedule

Remote or in office? It's up to you!

Office - St. Petersburg, metro st. Mayakovskaya

📩 @Khabibulin_it
> System designed to reduce healthcare costs through drug cost transparency at the point of care.

Это будет в штатах работать?
источник

Ю

Юля in pro.elixir
V
> System designed to reduce healthcare costs through drug cost transparency at the point of care.

Это будет в штатах работать?
Да, сам проект работает  в США
источник

E

Eugene in pro.elixir
Друзья, день добрый!
Я "только учусь", так что помогите разобраться в основах.

Вот есть простой модуль, вычисляющий значение факториала.

defmodule factorial_01 do

 def factorial(n) when n > 1 do
   n * factorial(n - 1)
 end

 def factorial(n) when n <= 1 do
   1
 end
end

Не очень понятно — как это в одном модуле может одна и та же функиция определяться два раза?? Код вполне себе работает, но для человека знакомого только с имеперативными языками, выглядит странно.  Спасибо.
источник

AK

Alexander Kladov in pro.elixir
Eugene
Друзья, день добрый!
Я "только учусь", так что помогите разобраться в основах.

Вот есть простой модуль, вычисляющий значение факториала.

defmodule factorial_01 do

 def factorial(n) when n > 1 do
   n * factorial(n - 1)
 end

 def factorial(n) when n <= 1 do
   1
 end
end

Не очень понятно — как это в одном модуле может одна и та же функиция определяться два раза?? Код вполне себе работает, но для человека знакомого только с имеперативными языками, выглядит странно.  Спасибо.
рассматривай это как разные функции с разными сигнатурами
источник

LL

Lama Lover in pro.elixir
Eugene
Друзья, день добрый!
Я "только учусь", так что помогите разобраться в основах.

Вот есть простой модуль, вычисляющий значение факториала.

defmodule factorial_01 do

 def factorial(n) when n > 1 do
   n * factorial(n - 1)
 end

 def factorial(n) when n <= 1 do
   1
 end
end

Не очень понятно — как это в одном модуле может одна и та же функиция определяться два раза?? Код вполне себе работает, но для человека знакомого только с имеперативными языками, выглядит странно.  Спасибо.
В императивных языках тоже одна и та же функция может определяться несколько раз: для разных типов и арностей

А так, там внутри происходит pattern-matching, то есть подбор значения по некоторому паттерну. Этот код на самом деле внутри преобразуется в набор условий, который виртуальная машина оптимизирует и выполняет проверки, а потом вызывает нужную имплементацию
источник

E

Eugene in pro.elixir
эммм... стало ещё более загадочно! Тут ведь тип и арность совпадают же!
источник

LL

Lama Lover in pro.elixir
Eugene
эммм... стало ещё более загадочно! Тут ведь тип и арность совпадают же!
Так это и не императивный язык :/
источник

E

Eugene in pro.elixir
шаманизм, не иначе...
источник

LL

Lama Lover in pro.elixir
Eugene
шаманизм, не иначе...
Нет, никакой магии внутри нет. По структурам, которые ты укажешь аргументами, (это и есть pattern) генерируется алгоритм, который проверяет и вызывает нужную имплементацию (можно сказать что это matching)
источник

AM

Aliaksandr Martsinov... in pro.elixir
Eugene
эммм... стало ещё более загадочно! Тут ведь тип и арность совпадают же!
в одной функции n больше единицы, в другой меньше либо равно) разные типы, так сказатб
источник

LL

Lama Lover in pro.elixir
Это и есть декларативность. Типа не ты пишешь код, который всё проверяет и вызывает, а ты пишешь что ты хочешь видеть, а код сам под тебя подстраивается
источник

LL

Lama Lover in pro.elixir
Только я бы лучше написал
источник

LL

Lama Lover in pro.elixir
def factorial(1), do: 1
def factorial(n), do: n * factorial(n - 1)
источник

AM

Aliaksandr Martsinov... in pro.elixir
а отрицательные?
источник

LL

Lama Lover in pro.elixir
Aliaksandr Martsinovich
а отрицательные?
Классические факториал определён обычно только для множества натуральных чисел (с единицы)
источник

AM

Aliaksandr Martsinov... in pro.elixir
так в эксепшене и напишем
источник

AK

Alexander Kladov in pro.elixir
Lama Lover
def factorial(1), do: 1
def factorial(n), do: n * factorial(n - 1)
тут же не будет оптимизации рекурсии?
источник

AB

Alexey Bolshakov in pro.elixir
Они сверху вниз будут проверяться, какая первая подойдет , та и выполнится
источник