`
litaocheng
  • 浏览: 337701 次
  • 性别: 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语言的语法图(Syntax Diagram)及其相关的编译原理知识。 首先,让我们明确什么是语法图。语法图,也称为哈里森图或railroad diagram,是一种图形化的方式来表示文法的规则,通常用于...

    Tiny Notes-开源

    Tiny Notes是一款开源的便笺和代码组织工具,旨在帮助用户高效地管理各种小段的文本信息,同时提供了方便的搜索功能。开源软件意味着其源代码是公开的,允许用户自由查看、修改和分发,这为开发者提供了定制和扩展...

    Tiny Notes-crx插件

    【Tiny Notes-crx插件】是一款专为英语用户设计的小型、便捷的笔记工具,它以浏览器扩展程序的形式存在,方便用户在浏览网页时快速记录重要信息。这款插件的核心功能在于提供一个弹出窗口小应用程序,让用户无需离开...

    tinyxml与tinyxml2

    TinyXML和TinyXML2是两个小型的开源库,专门用于解析和操作XML(eXtensible Markup Language)文档。这两个库都是用C++编写的,为C++开发者提供了方便的接口来读取、写入和操作XML数据。下面将详细介绍这两个库的...

    tinyxml2.h tinyxml2.cpp文件

    TinyXML-2,通常以tinyxml2库的形式存在,是一个轻量级的C++库,专门用于解析和操作XML文档。这个库由李·斯坦普(Lee Stemp)开发,设计简洁,易于集成到各种项目中,特别是对于嵌入式系统和资源有限的环境。在给定...

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

    《深入理解TINY编译器源码:C与C++编程实践》 TINY编译器,作为一个小型的、易于理解的编译器项目,是学习编译原理和实践的重要资源。它用C和C++编写,源码简洁且带有详细注释,非常适合初学者或者对编译器感兴趣的...

    RTX51 TINY 2.02 中文手册

    RTX51 TINY 2.02 中文手册知识点总结 本文档对 KEIL 公司的 RTX51 TINY 2.02 版实时操作系统内核进行了详细的介绍和说明。该手册主要面向开发者和工程师,旨在帮助他们快速了解和掌握 RTX51 TINY 2.02 的功能和使用...

    tinyxml2 version 9.0.0下载地址

    TinyXML2是一个小型、快速且易于使用的XML解析库,主要用于C++编程。版本9.0.0是该库的一个更新版本,提供了最新的功能和错误修复。在这个版本中,开发者可以期待更加稳定和优化的XML处理性能。 TinyXML2的设计目标...

    TinyXML2使用示例

    TinyXML2是一个轻量级的XML解析库,主要用于读取和写入XML文档。这个库在C++中设计,提供了一种简洁的方式来处理XML数据,适用于小型项目或嵌入式系统。在“TinyXML2使用示例”中,我们可以通过提供的源代码和XML...

    tinyOS内核分析

    ### TinyOS内核分析 #### 1. 综述 TinyOS是一款专为无线传感器网络设计的操作系统,其内核采用非抢占式设计,这意味着它依赖于任务的主动放弃CPU控制权来完成任务间的切换。这种设计使得TinyOS能够更好地支持资源...

    tinyxml2最新版本(来自github)

    TinyXML2是一个轻量级的XML解析库,主要用于读取和写入XML文档。这个库由Steve Baker开发,它的最新版本在2017年8月17日更新,这表明了开发者持续对库进行维护和改进以适应不断变化的编程需求。在本文中,我们将深入...

    yolov7-tiny.weights和yolov7-tiny.conv.87预训练模型文件下载

    YOLOv7-Tiny是YOLO(You Only Look Once)系列目标检测算法的一个轻量级变体,由Alexey Bochkovskiy等开发者在Darknet框架下设计。这个算法在保持高效的同时,具备较高的目标检测精度。在给定的压缩包中,包含了两个...

    QT使用TinyXML开源库解析XML文件

    QT框架是广受欢迎的开源C++开发平台,用于构建跨平台的应用程序,而TinyXML则是一个小巧、轻量级的开源库,专门用于解析和操作XML文档。在QT项目中集成TinyXML,可以方便地处理XML数据,尤其适用于那些需要读取、...

    tinyxml+tinyxpath+tinyxml++最新套件(20080916)

    TinyXML、TinyXPath和TinyXML++是开源的C++库,专门用于解析和操作XML文档。这些库在处理XML数据时提供了轻量级且高效的选择,尤其适合嵌入式系统和资源有限的环境。 TinyXML,版本2.5.3,是一个小型、简单且易于...

    Tiny4412中文用户手册

    根据提供的信息,本部分将围绕Tiny4412开发板的使用、更新及应用场景进行深入探讨,涵盖嵌入式Linux、C语言、ARM架构等多个技术点。 一、Tiny4412开发板概述 Tiny4412是一款基于ARM9架构的开发板,它为嵌入式Linux...

    tinyxml2源码及示例

    TinyXML2是一个轻量级的XML解析库,主要由C++编写,旨在提供简单、高效的方式来读取和写入XML文档。它适用于各种平台,包括桌面系统和移动系统,如Android。这个库的设计目标是小巧且易于理解,使得开发者能够快速地...

    tinycore v6.3

    Tinycore v6.3 是一个基于Linux的极小型操作系统,其设计目标是提供一个轻量级、快速启动的环境,适合于老旧硬件、虚拟化应用、服务器或作为基础系统进行定制开发。Tinycore Linux 以其小巧的体积和高度模块化的特性...

    Tiny6410官方PDF资料合集

    此文档为友善之臂Tiny6410官方文档,其中包含: 01-Tiny6410硬件手册 02-Tiny6410功能测试指南 03-Tiny6410刷机指南 04-Tiny6410 Linux开发指南 05-Tiny6410 Android开发指南 06-Tiny6410WinCE开发指南 07-...

    TinyXML入门教程

    ### TinyXML入门教程知识点详解 #### 一、XML简介与TinyXML概述 - **XML**:全称为**可扩展标记语言**(EXtensible Markup Language),是一种用于标记数据的语言,允许用户自定义数据的标识,从而区分不同类型的结构...

Global site tag (gtag.js) - Google Analytics