`
litaocheng
  • 浏览: 333537 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Tiny Notes About Erlang Syntax

阅读更多
Literal Term
int, float, atom, tuple, list, binary
in predefined attributes and user-defined attributes, the Value must be literal term. for example:
some_module.erl

...
-attr1(1).
-attr2(1.0).
-attr3(correct).
-attr4({1, 0}).
-attr5("good").
-attr6(<<"good">>).
...

all the attributes is normal.

List Comprehension
for example:

L = [{cn, "Beijing"}, {cn, "Shanghai"}, {us, "New York"}, {jp, "Tokyo"}].
a) CnCity = [Ci || {cn, Ci} <- L] or
b) CnCity = [Ci || {Country, Ci} <-L, Country =:= cn]

a) we can use pattern match in generator to get some Values, this is simple.
b) we can also use filter to get the expected values.

Macros With Same Name
In Erlang, if two macros with the same name, then we will get "redefing macro .." error info when compilation. so we must give the different names for all the macro.
for example:

-define(Log(S), (io:format("log:~s~n", [S]))).
-define(Log(F, D), (io:format("log:~s~n", [io_lib:format(F, D)]))).

change to

-define(Log(S), (io:format("log:~s~n", [S]))).
-define(Log2(F, D), (io:format("log:~s~n", [io_lib:format(F, D)]))).

Macros Can't use in function internal
e.g.
some_fun() ->
-ifdef(debug).
    io:format("some text~n"),
-endif.
  ....

will occur a syntax error.


分享到:
评论

相关推荐

    TINY 语法图 Syntax Diagram

    编译原理一书中的TINY语言的EBNF语法图。

    Tiny Notes-开源

    Tiny Notes是一个便笺/代码组织者。 它是一个小型且简单的工具,可帮助您组织小的文本片段,通过它们您可以快速搜索。 支持语法突出显示。

    TINY 扩充语言的语法分析

    华南师范大学 本资源包括TINY扩充语言的语法分析的实验报告,编译原理附录B和TINY扩充语言的语法分析代码.实验报告中说明了该实验的完成步骤. 扩充的语法规则有:实现while、do while、for语句和求余计算式子,具体...

    tinyxml与tinyxml2

    tinyxml与tinyxml2两个版本的源码,操作xml很方便,解压可以直接使用.

    Tiny Notes-crx插件

    语言:English 一个微型应用程序,可快速写入 弹出窗口中的一个小应用程序,用于快速记录您的笔记。

    Tiny notes-crx插件

    语言:English创建小笔记,无需离开当前标签页

    TINY编译器源码,tiny编译器源码下载,C,C++

    tiny语言编译器源码,包括详细注释,适用于学习编译原理

    tinyOS内核分析

    本文档从中间代码入手对 TinyOS 内核进行了简要分析,对于那些接触tinyOS 的人来说,这些是必须的,也是基础性的东西。

    ps插件 TinyPNG

    PS插件版Tinypng优化、无损压缩PNG,支持批量处理,据说只支持PhotoshopCC及以上的版本。 Tinypng是一款来自国外的在线图片压缩云应用,完全免费无需注册。Tinypng采用的压缩图片方式是有损压缩,也就是说你上传的...

    Tiny13的流水灯

    本代码为tiny13的流水灯代码,控制了五个LED灯,最大限度的应用了tiny13的端口。

    TINY+文法规则

    十分详细的描述了TINY+的全部文法规则,做一个TINY+编译器必备。

    Tiny6410刷机指南

    Tiny6410刷机指南 01- Tiny6410硬件手册.pdf https://download.csdn.net/download/elliotcs/10374084 02- Tiny6410功能测试指南.pdf https://download.csdn.net/download/elliotcs/10374097 03- Tiny6410刷机指南....

    tinyos51 for 51 操作系统

    TinyOS51系统整合了RTX51—Tiny的优点,并在LQ51内核基础上增加了消息列队功能。1、在TinyOS51系统中_task_关键依然有效,0号任务依然是最高优先级的任务,1号任务次之,依次类推。2、。同时TinyOS51系统弥补了RTX51...

    设计并实现TINYC语言的扫描程序TINYC.zip

    0513《编译原理》作业要求 设计并实现TINYC语言的扫描程序; 要求: 作业内容要求:完成扫描程序的设计与实现,具体要求为: •设计并实现TINYC语言的扫描程序; •完成并提交实验报告,扫描程序的源程序,编译后的可执行...

    让开源项目TinyXml支持Unicode(wchar_t)

    开源项目TinyXml项目所涉及的字符编码说明如下: 1. TinyXml函数调用接口的字符型参数,仅支持`窄字符`格式(char*),不兼容`宽字符`格式(wchar_t*)。 2. TinyXml函数提供的Xml内容解析功能,仅支持以ANSI编码和UTF...

    tinycc.zip

    tinycc源码 Tiny C Compiler(简称TCC, 或Tiny CC)是世界上最小的C语言编译器,而且是开源的, 小到只有约100K. (VC, GCC动不动几十M几百M的, 汗) 别看它小, 功能还是很强. 可以编译所有C99标准的ANSI C程序 , 支持...

    yolov3-tiny车辆检测模型 yolov3-tiny.weights yolov3-tiny.cfg obj.names

    opencv-yolo-tiny车辆检测需要的车辆检测模型文件 yolov3-tiny.weights yolov3-tiny.cfg obj.names

    tinyos.sh文件

    tinyos.sh文件,在linux环境下生成,cygwin环境下可用,tinyos.sh文件总出问题的可以下载,将绝对路径修改成自己的

    TINY Syntax Tree-setup1.0.0.exe

    软件安装包

    tinyxml的使用

    tinyxml的使用,包括tinyxml源文件 tinyxml的使用,包括tinyxml源文件

Global site tag (gtag.js) - Google Analytics