tutorial programacion imagenes erlang

programacion - erlang tutorial



¿Existe una especificación del protocolo del líder del grupo que maneja IO? (2)

En Erlang, cada proceso tiene un líder de grupo, y cuando un proceso quiere imprimir algo (es decir, llama a la biblioteca io o hace algo similar), envía un mensaje al líder de su grupo.

Mi pregunta es, ¿dónde puedo encontrar la especificación de estos mensajes? ¿O en general, la especificación de lo que debe hacer un líder de grupo?

Pude averiguar con algunos experimentos que a veces el proceso envía un término {io_request, Sender, GroupLeader, Request} , y la respuesta es un término {io_reply, GroupLeader, ok} , pero puede haber otros casos.



The Erlang Rationale (video) o (diapositivas) ; es una buena fuente de información, como es el código fuente para user.erl .

En breve:

{io_request, From, ReplyAs, Request} %From is the process to send the reply to, %ReplyAs is any term the caller desires to %match up the request and the response. (returned verbatim in the reply) {io_reply, ReplyAs, Reply}

Algunas solicitudes en user.erl:

{put_chars, IoList} % puts the iolist {put_chars, M,F,A} % puts the result of apply(M,F,A) {get_geometry, ''rows'' | ''columns''} % returns the number of rows or columns of the console {get_line, Prompt} % calls io_lib:collect_line(Prompt) {get_chars, Prompt, Mod, Func, ExtraArgs} {get_until, Prompt, Mod, Func, Args} {setopts, Options} % only option supported by user is ''binary'' % (binary mode if present in Options, list mode otherwise)