Elixir语言】的更多相关文章

Elixir是一个基于Erlang VM的函数式元编程语言(类似Ruby),通过动态语言的灵活的语法和宏能够利用Erlang建立一个并发 分布 失败冗余的高质量代码…
安装 MAC 平台用 brew 安装 brew update brew install elixir 如果没有 erlang 环境,上面的命令会自定安装 erlang 的环境. 基本数据类型 iex> 1 # integer iex> 0x1F # integer iex> 1.0 # float iex> true # boolean iex> :atom # atom / symbol iex> "elixir" # string iex>…
概述 介绍了 api 的各种写法之后,下面介绍构建 api 时与数据库连接的方式. 注 下面使用的工程的完整代码已经公开在: http://git.oschina.net/wangyubin/phoenix-api ecto 简介 ecto 其实是独立于 phoenix framework 的,它是 elixir 语言实现的用来访问数据库的框架,类似于 ORM 但是和传统的 ORM 又有些不一样. 可以这么理解,它是利用了 elixir 语言的动态性和函数式的特性,参考了传统的 ORM 的优势后…
ecto 简介 ecto 相当于 elixir 的 ORM,但是得益于 elixir 语言,和传统的 ORM 相比,更加简洁和强大. ecto 主要分为 4 部分: Repo: 这是和真正数据库交互的部分 Schema: 相当于是数据库中表的定义,但不仅仅是定义 Changeset:Schema 到真正数据库之间的转换层 Query:elixir 风格的数据查询方式 ecto 连接数据库(以 sqlite 为例) 连接到真实的数据库,需要相应的驱动,下面以 sqlite 为例,配置数据库的连接…
ETH&EOS开发资源及工具集合(完整汇总版) 3113 ETH开发资源篇 一.开发语言 ·         Solidity - 官方推荐以太坊智能合约开发语言,也是目前最为主流的智能合约语言 ·         Bamboo - 是一种将智能合约描述为有限状态机的语言,把智能合约看成一个状态和交易的函数,同时生成一个新的状态 ·         Vyper - 一种类 python 的面向合约编程语言,专注于以太坊虚拟机,着重于安全.简洁.和稳定性 二.ERC 通证标准 ·        …
原文连接: https://spacevim.org/cn/layers/lang/elixir/ 模块简介 功能特性 启用模块 快捷键 语言专属快捷键 交互式编程 运行当前脚本 模块简介 这一模块为 SpaceVim 提供了 elixir 开发支持,包括代码补全.语法检查.以及代码格式化等特性. 功能特性 该模块主要包括插件 slashmili/alchemist.vim, 该插件提供: 代码补全 文档查询 跳转定义处 同时,SpaceVim 还为 elixir 开发提供了交互式编程.一键运行…
这是Elixir的作者 José Valim 参与的一次技术访谈,很有料,我们可以了解Elixir的一些设计初衷,目标等等. 原文在: http://rubyrogues.com/114-rr-elixir-with-jose-valim/ Podcast 下载地址:  http://traffic.libsyn.com/rubyrogues/RR114Elixir.mp3 缘起 José Valim 谈到了 ‘Seven Languages in Seven Weeks’ 对他的影响,原文是听…
Why Elixir   为什么要学习Elixir?答案很简单,为了更好的学习Erlang.这么无厘头的理由? Erlang语法设计几乎没有考虑过取悦开发者,所以学习之初的门槛略高.对于已经克服了最初语法障碍的同学,Elixir其实没有什么吸引力. 在Elixir之前已经有很多类似的项目,比如http://lfe.github.io Elixir类似思路的还有http://reia-lang.org 在前,但Elixir显然做得更好一些.看这些语言的时候,会有一种感觉:把这语言语法层面做优化调整…
Erlang Resources里面关于Elixir的资料越来越多,加上Joe Armstrong的这篇文章,对Elixir的兴趣也越来越浓厚,投入零散时间学习了一下.零零散散,测试代码写了一些,Evernote中笔记更是混乱,还是逐步整理出来. Elixir is a functional, meta-programming aware language built on top of the Erlang VM. It is a dynamic language with flexible…
Elixir官网:http://elixir-lang.org/ Elixir是一种函数式动态语言,用于构建可伸缩.易维护的应用程序. Elixir是基于Erlang VM的,其广为人知的特点是运行低延时.分布式.可容错的系统,并成功用于Web开发与嵌入式软件领域. 1. 平台特性 1.1 可伸缩 所有Elixir代码运行于相互隔离的轻量级线程中,相互间通过message通信: parent = self() # Spawns an Elixir process (not an operatin…
概述 elixir 本身是一种 immutable 的语言,默认情况下,进程间是不共享任何状态的,进程之间通过消息来交互. 而 Agent 则封装了一种进程间共享状态的方式,通过这种方式,不用显式的写 send/receieve 的代码,就能方便的在进程之间共享状态. 使用方法 不用 Agent 来管理状态 首先,看一个在不用 Agent 的情况下,如何获取进程状态的例子. defmodule WithoutAgent do def start do Map.new() end def get(…
1.skynet pomelo(node.js) elixir(erlang) 周末研究总结 手游这两年发展来看,感觉对实时性要求越来越高,有同事在研究Elixir开发,google得知这东西是基于erlang搞出来的,语法类似ruby: 公司现在客户端采用全cocos2d + c++ + lua,新项目unity3d + c# + lua, lua在产品开发中使用比较频繁,同事了解程度也比较深: 完美情况下自然最好是服务端也使用lua开发,之前就经常发生在服务端ruby代码中写lua的囧像.…
自2015年11月开始,所有C语言系列都呈现出衰落之势.在超过15年的时间里,C语言在编程语言排行榜中的占比一直有15%-20%,但今年却突然急转直下,目前占比已不足10%,且目前看来回天乏力. 那么,C语言到底怎么了?数月前,我们已经列出了一些可能的原因,比如:在构思诸如移动应用或者移动网页等热门领域类项目时,我们很少想要使用C语言:这么多年来,C语言都没有太大优化,也没有大型企业支持推进这门语言的发展——不过,也许原因不仅于此,我们将继续探寻更多原因,同时希望大家分享自己的看法. 编程语言排…
语言和平台 Python 3.5 在今年发布了,带来了很多新特性 比如 Asyncio,,为你带来了类似 node.js 的事件机制,还有type hints. 鉴于Python 3 终于真正地火起来了我们强烈建议你替换掉 Python 2. 几乎所有的库都已经支持 Python 3 了,所以现在是一个升级你的历史遗留代码的好时机. PHP 7 是一个重大的新版本,这个版本修复了很多问题并且带来了新特性和性能提升(看看概览) . PHP 7 大约比 PHP 5.6 快2倍, 这对一些大型项目还有…
Go语言有很多工具, goimports用于package的自动导入或者删除, golint用于检查源码中不符合Go coding style的地方, 比如全名,注释等. 还有其它工具如gorename, guru等工具. 作为工具它们都是使用go语言(查看)开发的, 这些工具都有一个共同点就是: 读取源代码, 分析源代码, 修改或生成新代码. 简述 很多编程语言/库/框架等都能生成代码, 比如使用rails, 可以轻松地new一个project出来, 生成项目基本代码, 我们称其为boiler…
Lua 本条目介绍的是一种编程语言.关于关于Lua在维基百科中的使用,请见"维基百科:Lua".关于"Lua"一词的其他意思,请见"卢阿". Lua 编程范型 多重编程范式,脚本,命令式编程(过程式,基于原型的编程,面向对象程序),函数编程语言 设计者 Roberto Ierusalimschy Waldemar Celes Luiz Henrique de Figueiredo 发行时间 1993年 最新发行时间 5.3.4(2017年1月30…
概述 Elixir 是一种基于 Erlang 虚拟机的函数式,面向并行的通用语言, 它是一门通用语言,所以不仅可以用在擅长的高可用,高并发场景下,也可以用在 web 开发等场景下. Erlang 诞生于 1986 年,爱立信. 有了 Erlang,为什么还要 Elixir? Erlang 毕竟诞生的早,虽然有很多优秀的特性,但是语法非常晦涩难懂,甚至没有支持 String Elixir 只是 Erlang 很简单的封装,不仅保留了 Erlang 所有的优秀特性,还提供了类似 Ruby 那样高效的…
概述 mix 是 elixir 工程的构建工具,利用 mix,可以快速方便的创建 elixir 工程,写单元测试,管理 elixir 包的依赖管理等等. 我觉得刚开始学习 elixir 的时候,先简单看看 mix 的用法,也方便学习中写些 elixir 的小例子. 本文环境基于: $ elixir -v Erlang/OTP 18 [erts-7.2.1] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:fal…
关注之后加星标,江湖要事早知道 ​ 文章来源:jb51.net 有一种语言堪称比语言排行榜前五热门选手的Python.Java更快,它就是GO语言. Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了Windows系统下的实现.在2016年,Go被软件评价公司TIOBE 选为“TIOBE2016 年最佳语言”. 目前,Go每半年发布一个二级版本(即从a.x升级到a.y). 在Go语言面世后的9年,有很多公司开始使用Go语言开发自己…
 Elixir中的一些基础的数据结构:整数,浮点数,字符串,原子,列表,元组  整数,浮点数,字符串 跟其他语言差不多  原子:名字为值的常量  在ruby类似Symbols  在erlang是用大写字母开头定义 iex> :hello :hello iex> :hello == :world false 列表:Elixir用方括号来表示一个列表,列表内元素的类型是随意的iex(13)> [2,3,4][2, 3, 4] ++ --iex(14)> [2,3,4] ++ [5,6,…
Golang优秀开源项目汇总(持续更新...)我把这个汇总放在github上了, 后面更新也会在github上更新. https://github.com/hackstoic/golang-open-source-projects  . 欢迎fork, star , watch, 提issue. 资料参考来源:http://studygolang.com/projects 监控系统 序号 名称 项目地址 简介 1 OpenFalcon http://github.com/open-falcon/…
Go语言的9大优势和3大缺点 转用一门新语言通常是一项大决策,尤其是当你的团队成员中只有一个使用过它时.今年 Stream 团队的主要编程语言从 Python 转向了 Go.本文解释了其背后的九大原因以及如何做好这一转换. Go的优势 原因 1:性能 Go 极其地快.其性能与 Java 或 C++相似.在我们的使用中,Go 一般比 Python 要快 30 倍.以下是 Go 与 Java 之间的基准比较: 原因 2:语言性能很重要 对很多应用来说,编程语言只是简单充当了其与数据集之间的胶水.语言…
原文: http://elixir-lang.org/crash-course.html 函数调用 Elixir允许你调用函数的时候省略括号, Erlang不行. Erlang Elixir some_function(). some_function sum(A,B) sum a,b 从模块中调用一个函数, 使用不同的语法, 在Erlang, 你可以写: lists:last([1,2]). 从List模块中调用last函数. 在Elixir中使用.符号代替:符号. List.last([1,…
TIOBE 七月排名 Go 进入前十 TIOBE 七月头条:Go 语言达到历史最高并进入前十.对于 Go 语言来说,这是一个里程碑时刻,我们可以更大胆地想象,它下一步的发展会达到怎样的高度.Go 是否能够真正成为编程语言中的重量级角色,甚至在未来将JavaScript 和 Python 甩在身后?Kotlin.Elixir和Hack 这些新兴语言本月排名并未上升,Kotlin 下降了 5 位,Hack下降了 6 位 而 Elixir 下降了 5 位并且掉出了前五十. Erlang 和 Go 的对…
2019年,Erlang社区在应用层上除了aeternity区块链让人印象深刻(Killer App)外,就没有特别出彩的应用出现.在Web,IoT,MessageQueue这些成熟领域,已经有相当成熟的基础库,比如:Cowboy,Emqx,RabbitMq等,但是由于Erlang圈非常小众和Ericsson低调("不太主动")的开源态度,还无法依赖这些基础库形成丰富强大的生态链.今年Erlang最大的亮点就是来自OTP Team R22的大量全新重构,主旋律是深耕底层,R22在19年…
安装之前,先看一下它们的简要说明 Erlang Erlang是一种开源编程语言,用于构建对高可用性有要求的大规模可扩展的软实时系统.它通常用于电信,银行,电子商务,计算机电话和即时消息中.Erlang的runtime系统具有对并发,分发和容错的内置支持.它是在爱立信计算机科学实验室设计的. Elixir Elixir是一种动态的功能语言,旨在用于构建可伸缩和可维护的应用程序.Elixir利用了以运行低延迟,分布式和容错系统而著称的Erlang VM,同时也成功地用于Web开发和嵌入式软件领域.…
Markdown 语法高亮支持的语言还是比较多的,记下来备用. 语言名 关键字 Bash bash CoffeeScript coffeescript C++ cpp C# cs CSS css Diff diff HTTP http Ini ini Java java JavaScript javascript JSON json Makefile makefile Markdown markdown Objective-C objectivec Perl perl Python python…
2021年2月, 编程语言的七国集团峰会在风景优美的Linux庄园如期召开. C, Java, Python, JavaScript , C++ , C#,  PHP 相继入座. C语言作为主持人,在大屏幕上用一幅图总结了一下近二十年各国的沉浮. 各国代表对C语言的工作纷纷表示赞赏. C语言说道:我们七国集团已经统治IT界20多年了,历经桌面时代,互联网时代,大数据时代,人工智能时代而不倒,这次会议就是争取把大好局面再维持20年! C语言随后介绍了本次G7峰会的两大议题. 1. 解决内部争端 2…
大家好! 我是韩老师.还记得 6 年前的夏天,我在巨硬写着世界上最好的语言,有时也需要带着游标卡尺写着另一门语言.然而,我对这两门语言都不熟悉,如果能在 VS Code 中方便快捷地运行各种语言,那岂不是很方便?于是,我就开发了 Code Runner 插件. https://github.com/formulahendry/vscode-code-runner 下载量 2016 年 7 月 15 日,Code Runner 正式发布! 2019 年 11 月 24 日,Code Runner…
问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推.同样可以用一个数组B来存储b. 计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即和的十位数)存入r,把和的个位数存入C[0],即C[0]等于(A[0]+B[0])%10.然后计算A[1]与B[1]…