Почему Erlang не имеет замену Cloc в C NIF?
Почему Erlang имеет замену C NIF для malloc
, enif_alloc
, но нет calloc
? Тем самым заставляя использовать memset()
после enif_alloc
для доступа к массиву.
1 ответ
Решение
Ну, я предполагаю, что это связано с фактом (из документации):
"NIFs были введены в R13B03 в качестве экспериментальной функции".
С другой стороны, обзорная комиссия Erlang также довольно консервативна, вероятно, из-за того, что родилась в телекоммуникационной компании, и это понятно для отказоустойчивых языков.
Думаю, я не вижу проблемы, с которой вы столкнулись, поскольку вы всегда можете написать правильный порт с помощью calloc() и использовать старые методы маршалинга. http://www.erlang.org/doc/tutorial/erl_interface.html
Счастливого C кодирования!