LINUX.ORG.RU
ФорумTalks

Erlang несколько вопросов


0

0

Вот стала интересна тема функциональных языков, и возникло несколько вопросов:

1. erlang - это компилируемый или интерпритируемый язык

2. если компилируемый, можно ли написать на нем например ядро ос

2. заявлено о том что он поддерживает real-time что-то там, что это значит: на нем можно писать rtos топа qnx?

ps если вопросы покажутся глупыми, заранее извиняюсь


Ответ на: комментарий от MiracleMan

логично :), но хотелось бы услышать мнения

Phobos
() автор топика

1.4. What sort of problems is Erlang not particularly suitable for?

People use Erlang for all sorts of surprising things, for instance to communicate with X11 at the protocol level, but, there are some common situations where Erlang is not likely to be the language of choice.

The most common class of 'less suitable' problems is characterised by performance being a prime requirement and constant-factors having a large effect on performance. Typical examples are image processing, signal processing, sorting large volumes of data and low-level protocol termination.

Another class of problem is characterised by a wide interface to existing C code. A typical example is implementing operating system device drivers.

Most (all?) large systems developed using Erlang make heavy use of C for low-level code, leaving Erlang to manage the parts which tend to be complex in other languages, like controlling systems spread across several machines and implementing complex protocol logic.

- из ФАКа по нему

Spectr ★★★
()
Ответ на: комментарий от devnull-physicist

>В бумажном варианте - по сокетам лучше всего читать Стивенса.

Я имею ввиду сокеты в Erlang, а не в общем.

Motiv_studenta ★★
()

1) компилируемый в байт-код. Есть нативный компилятор, но работает только на 2 архитектурах и с заморочками

2) нет

2 еще раз) где?

Zulu ★★☆☆
()

> 2. заявлено о том что он поддерживает real-time что-то там, что это значит: на нем можно писать rtos топа qnx?

Это означает грубо говоря следующее: байткод компилятором разбивается на конечные фрагменты (редукции), которые последовательно выполняются интерпретатором. Время выполения одной редукции всегда меньше T, где T - некоторая константа, зависящая от среды исполнения (например от мощности процессора). По такой схеме очень хорошо масштабируется большое число "параллельных" Erlang-процессов, так как ни один из них не может захватить процессор на промежуток времени больший чем T. Это разработчики и называют софт-реалтаймом :)

zenith ★★★
()
Ответ на: комментарий от zenith

Прочитал заголовок как "Enlarge несколько вопросов" и задумался1

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.