特性

大下排序:number < atom < reference < fun < port < pid < tuple < list < bit string

也就是说a永远大于任何数值;{}永远大于a;[]永远大于{};<<>>永远大于其他类型的变量

Erlang中一切都是表达式而表达式都是有值的,即使是try...end

以函数作为参数调用时可以使用匿名函数fun()...end,也可以使用成员函数fun demo/1

atom和ets不会参与GC,所以要有计划分配的创建,ets表只有在调用delete或者创建进程终止时才会销毁

Erlang GC基于进程

语法约定

特殊符号

顺序执行语句使用逗号","分割

分支语句使用分号";"分割

函数/语句结束使用句点"."分割

注释以百分号"%"开头到该行结尾结束

Erlang中等号"="起的不是简单的赋值的作用,是用来做模式匹配,如果等号左边的变量未赋值的情况下不管等号右边的结果是什么都会合等号左边的变量绑定,这时候才起到赋值的作用

下划线"_"作为通配符

下划线"_"开头的变量即时不使用也不会编译警告

双冒号"::"指定参数或类型取值范围/限定类型

美元符号"$"表示整型变量值(ASCII)或者在erlang:words/2使用时作为分隔符标识

%%todo 待续

Erlang学习记录:语法和特性的更多相关文章

  1. Elasticsearch学习记录(分布式的特性)

    Elasticsearch学习记录(分布式的特性) 分布式的特性 我们提到Elasticsearch可以扩展到上百(甚至上千)的服务器来处理PB级的数据.然而我们的例子只给出了一些使用Elastics ...

  2. Erlang学习记录:输入和输出

    输入和输出 输入和输出功能都被定义在io模块 输出功能非常常用,由于erlang项目没有可断点调试的IDE(或者说根本不需要),所以所有的调试操作都是由io输出 来调试的 io:get_line/1. ...

  3. vue3学习记录(新特性)

    总概 1) 性能提升 打包大小减少 41% 初次渲染快 55%,更新渲染快 133% 内存减少 54% 使用 Proxy 代替 defineProperty 实现数据响应式 重写虚拟 DOM 的实现和 ...

  4. Erlang学习记录(三)——表达式大集合

    Erlang中的表达式必须以.结束才会去执行.如果不加.你在编译环境下按多少次Enter,表达式都不会执行,表达式之间可以用,分隔,以.结尾后所有的表达式都会执行,但是只有最后一个以.结尾的表达式会在 ...

  5. Erlang学习记录(二)——基本数据类型

    Erlang可以说和我以前接触过的语言都大不相同,这个从它的类型定义就可以看出来...反正学起来觉得既不熟悉,也不亲切,我估计在用Erlang写应用的时候,整个编程思路都要变一下了.不过存在即是合理的 ...

  6. Erlang学习记录(一)——Windows下的环境搭建

    一.安装编译器 在http://www.erlang.org/download.html下载R16B01 Windows Binary File并安装. 二.运行编译器 安装完编译器后,打开安装目录下 ...

  7. Erlang学习记录:相关工具和文档

    在线工具和文档 网址 说明 OTP Reference Page Index 内置模块查询 Erlang/OTP Applications N Kernel Reference Manual 入门官方 ...

  8. Python学习记录----语法学习

    一控制语句 http://blog.csdn.net/lynn_yan/article/details/5464911 if 语句 二 字典详解 http://blog.csdn.net/moodyt ...

  9. Erlang学习记录:app demo

    目录结构 │ Emakefile │ make.bat │ start.bat ├─config │ config.config │ server.app ├─ebin │ wulin_app.bea ...

随机推荐

  1. Linux编程获取本机IP地址

    使用函数getifaddrs来枚举网卡IP,当中使用到的结构体例如以下所看到的: struct ifaddrs { struct ifaddrs *ifa_next; /* Next item in ...

  2. 在VSCode中使用Markdown

    前言 最近在学习使用Markdown语法,尝试使用了"MarkdownEditor"."Sublime Text3"."VSCode"这三种 ...

  3. 沉默的QQ

    QQ很久没有叮咚了,一是没人发消息给我,二是我关了QQ的声音.现在除了几个还在接收消息的群外,其他的群都屏蔽了,有事才上去看看.我从来就没写过QQ空间,那些以前经常写空间的朋友也多数停止了喧闹.每次登 ...

  4. leetcode-数组的相对排序

    Python解法: def relativeSortArray(arr1, arr2): arr = [0 for _ in range(110)] new = [] for a in range(l ...

  5. scala中函数简单使用记录

    object funcHighLevel { def main(args: Array[String]): Unit = { // 创建一个匿名函数 val sayFunc = (name: Stri ...

  6. C/C++ 表达式

    == ; std::cout << b<< std::endl; EX

  7. bzoj1025题解

    [题意分析] 定义一个等价类为满足如下条件的一个极大的集合Q:∀t∈Q,k∈N+,若tk∈全集R,都成立tk∈Q. 给定n,记[1,n]∩N上所有排列置换的全集为R.求对于所有的等价类Q,card({ ...

  8. bzoj1004题解

    [题意分析] 给N个元素染色,可以在定置换群的作用下互相转化的染色方案算相同的,问本质不同的染色方案数. [解题思路] 引理:Burnside定理 设集合S=[1,n]∩N,记等价类数为L,给定S上的 ...

  9. 同构图+思维构造——牛客多校第六场E

    考的其实是同构图的性质: 1.同构图的顶点数,边数相等 2.同构图通过点的映射后邻接矩阵相同 这篇博客讲的很好https://www.jianshu.com/p/c33b5d1b4cd9 本题还需要一 ...

  10. 基本算数定理快速求约数个数——lightoj1208

    #include<bits/stdc++.h> using namespace std; #define ll long long #define maxn 1000005 bool vi ...