本文的目的是处理 Telegram 协议的定义语言TL 本文需要对编译原理有一定的了解. Leex 是一个 Erlang 语言实现的词法分析器(Lexical Analyzer). 接收字符流输入, 产生符号流输出. Yecc 是一个 Erlang 语言实现的语法分析器(Syntactic Parser). 接收符号流输入, 产生AST. 词法分析器 leex 一个 leex 词法分析文件的包含下

telegram   erlang   elixir  

Rustler 项目还不是很成熟, 基本可用. 有兴趣的可以给作者提 Issue. Rustler 是一个在安全的用 Rust 编写 Erlang NIF 的库. 这里安全的含义是, 它不会导致 BEAM(Erlang 虚拟机)的崩溃. 该库提供了一个设施用于生成与BEAM交互的模板, 处理Erlang Term的编码和解码. Rustler 适用于 Erlang 和 Elixir, Elixir

rust   erlang   elixir  

rebar3 的使用

最近从新拾起erlang做一个业余项目,之前一直用rebar来构建工程。在rebar的项目主页看到We encourage you to move to https://github.com/erlang/rebar3的字样. 于是就去用了一下rebar3。 rebar3 和rebar有太大改变了。简单记录一下使用功能: 安装 $ git clone https://github.com/erla

rebar3   erlang  

OTP 原理 有限状态机被描述为如下形式的一组关系集合. 含义可以解释为: 如果在状态S的时候发生了事件E, 那么执行动作A并且使状态S过渡( transition )到状态S'. 对于使用 gen_fsm 行为的有限状态机来说, 状态过渡规则被实现为一些 Erlang 函数, 他们遵循如下的约定: StateName(Event, StateData) -> .. code for ac

fsm   erlang   elixir  

Erlang内置的SSH应用 通过 Erlang 提供的 SSH应用程序连接到远程 Erlang 控制台 生成客户端/服务器秘钥 mkdir client ssh-keygen -t rsa -f /tmp/client/id_rsa mkdir server ssh-keygen -t rsa -f /tmp/server/ssh_host_rsa_key 把客户端的公钥复制到服务器秘钥目录下

ssh   erlang   elixir  

这一篇是 Erlang/Elixir: 在OSX上通过DTrace对Erlang进行运行时的动态追踪 在Ubuntu上的姊妹篇 SystemTap 的工作流 Ubuntu 添加 SystemTap 支持 SystemTap 是监控和跟踪运行中的Linux 内核的操作的动态方法. 这句话的关键词是动态. 因为SystemTap 没有使用工具构建一个特殊的内核, 而是允许您在运行时动态地安装该工具.

systemtap   elixir   erlang  

DTrace 是一把瑞士军刀 这一篇是 Erlang/Elixir: 在Ubuntu上通过SystemTap对Erlang进行运行时的动态追踪 的姊妹篇 动态系统追踪的工作流 DTrace 的工作流 基本配置 OSX是默认支持DTrace的, 所以不需要什么修改就可以使用, 只需要在Erlang的编译选项添加--with-dynamic-trace=dtrace 即可. 这里为了方便我使用了ker

macos   dtrace   elixir   erlang  

这里介绍的是 Erlang 自己实现的内存分配器, 并非操作系统的内存分配器, Erlang 需要调用操作系统的分配器获取一大块内存, 并用于 Erlang 系统内部的内存分配, 来满足比如创建进程, 原子, 二进制数据, 驱动等数据结构的内存需求. 分配器 描述 temp_alloc 临时分配器 eheap_alloc 进程堆 binary_alloc 二进制数据 ets_alloc ETS 表

erlang  

首先给大家分享一个笑话, 这是程序员专用笑话, 祝各位开心! 英语说明很简单, 就是叫你如何画一个猫头鹰, 分为两个步骤: 第一步: 画一些圆 第二部: 画剩余的部分 安装 安装过程非常简单, 两行命令即可, 最好能把kerl添加到PATH环境变量中. 下载 curl -O https://raw.githubusercontent.com/yrashk/kerl/master/kerl 修改执行

kerl   erlang  

首先从Github上克隆riak-dev-cluster工具, 该工具创建的只是一个测试集群, 主要用于在开发中进行测试, 不建议在产品环境中使用. 1.根据Open File Limits设置进程对文件的打开数限制. 2.克隆参仓库 $ git clone git://github.com/basho/riak-dev-cluster.git $ cd riak-dev-cluster 3.运行

erlang   riak   elixir  
1 2 3 4 5