Публикации по теме 'erlang'
Замыкания в Erlang: легко!
Ранее я писал о замыканиях в JavaScript. К моему удивлению, я обнаружил, что делегирование функции в модулях приложения Erlang также обеспечивает закрытие. — И что, опять закрытие? Замыкание — это первоначальная область действия функции, которая сохраняется, даже если она была передана какой-либо другой части приложения через делегат. Из-за закрытия функция по-прежнему будет иметь доступ к переменным, которые у нее были изначально, независимо от того, откуда она выполняется, она..
Красота ОТП
Как я писал в предыдущих публикациях, у меня был большой перерыв в Erlang и Elixir, но я программировал в них довольно давно. Во время этого перерыва я писал код на Java и C, как и раньше, когда знал Erlang. Теперь в качестве быстрого напоминания я начал читать «Функциональная веб-разработка с помощью Elixir, OTP и Phoenix» и делать то, что в ней написано. Вчера я прошел часть Эликсира, которая сама по себе была приятной. Синтаксис для некоторых странный, мне приятно смотреть и писать...
Вопросы по теме 'erlang'
Как построить неблокирующий TCP-сервер с шифрованием ssl
Неблокирующий TCP-сервер на trapexit.org объясняет, как создать сервер на основе tcp_gen, но я хотите изменить этот пример и заставить его работать с ssl. Пока я совершенно не знаю, как заменить
{ok, Ref} = prim_inet:async_accept(Listen_socket,...
1320 просмотров
schedule
31.03.2024
Erlang: можно ли написать минимальную функцию в виде списка?
Учитывая функцию:
min(A, B) when A =< B -> A;
min(_A, B) -> B.
могу ли я использовать это в функции foldl аналогично этому:
lists:foldl(fun min/2, 0, [1,2,3,4,5,6,7,8,9,10])
Я считаю, что это невозможно,...
1603 просмотров
schedule
14.05.2024
Невозможно удалить сборки erlang с помощью kerl
Я установил Erlang с помощью kerl. Я построил его как 32-битный, а не 64-битный, как должен был. Попытка исправить мою ошибку оказывается проблематичной.
./kerl status
приносит мне
Available builds:
R15B01,r15b01
----------
Available...
871 просмотров
schedule
10.03.2024
Сопоставление шаблонов битового синтаксиса Erlang работает в оболочке, но не в качестве переданного аргумента
Я пытаюсь сделать простой декодер пакетов UDP.
packet_decoder(Packet)->
<<Opts:8,MobIdLength:8,MobId:64,MobIdType:8,MgeType:8,SeqNum:16,Rest/binary>> = Packet,
io:format("Options:~p~n",Opts),...
305 просмотров
schedule
07.05.2024
таблицы ejabberd mod_archive_odbc для хранения сообщений
Я использую Ejabberd для реализации приложения чата, я переключил конфигурацию ejabberd на использование ODBC (mysql) вместо использования по умолчанию Mnesia для базы данных.
Теперь я скомпилировал и настроил mod_archive_odbc и...
978 просмотров
schedule
29.05.2024
Erlang: блокировка поведения вызова C NIF
Я наблюдал блокирующее поведение C NIF, когда они вызывались одновременно многими процессами Erlang. Можно ли сделать его неблокирующим? Здесь работает mutex , которого я не могу понять?
P.S. Базовый NIF "Hello world" можно протестировать,...
1057 просмотров
schedule
25.04.2024
Как передать функции в качестве аргументов внутри модулей?
Вопрос, который я пытаюсь решить,
Write a split(L) which returns {Even, Odd}.
Доступный код, который у меня есть, выглядит так
-export([even/1, odd/1, filter/2, split_using_filter/1]).
even(Integer) -> Integer rem 2 =:= 0....
629 просмотров
schedule
20.04.2024
неопределенные карты функций: to_json/1
Это одна из вещей, которым я научился у Programming Erlang, 2nd Ed , но, похоже, она не работает в оболочке.
$ erl
Erlang/OTP 17 [erts-6.2] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]
Eshell V6.2 (abort...
1690 просмотров
schedule
08.03.2024
Почему я получаю дважды одно и то же сообщение?
Я новичок в Erlang, и я разрабатываю небольшую программу для моделирования робота, который собирает банки:
-export([start/0]).
start()->
Believes=#{bin_position=>0, num_cans=>1, can_position=>4, my_position=>1},...
59 просмотров
schedule
31.03.2024