我们定义一个小表达语言:1写一个parser(函数expr_parse/1) 把字符转变成erlang表达。例如:“((5+8)*3)” → {mul,{plus,{num,5},{num,8}},{num,3}} ;“((2*3)+(7-2))” → {plus,{mul,{num,2},{num,3}},{minus,{num,7},{num,2}}}
2写一个pretty printer(函数expr_print/1)能够以一种很好的有格式的方式展示出erlang(不要忘了添加括号的个数)
3写一个evaluation(函数expr_eval/1)计算出相应的结果。比如:{mul,{plus,{num,5},{num,8}},{num,3}} → 39
实现一个函数:quicksort/1,它能够用quicksort算法sort一个列表。
(算法:列表的开头,被定为支点元素;剩下的元素可以分成两个列表,一个是比支点元素大的,另外一个是比支点元素小的。然后递归快速排序这两个列表,最后把支点元素加入其中)
用erlang定义hanoi/1(汉诺塔),就是有三个柱子然后可以随意个盘子,从最左端的柱子移到最右端的柱子。不可以小的盘子在大的盘子下面。比如说有三个盘子,需要几步才能从最左边的柱子上移动到最右边的柱子上面?
相关推荐
### Erlang语言程序设计 #### 一、Erlang语言简介与重要性 Erlang是一种功能强大且灵活的编程语言,它最初由爱立信公司开发,旨在为电信系统提供高并发、分布式处理能力。随着时间的发展,Erlang不仅在电信领域...
【Erlang程序设计(第2版)】是由Erlang之父Joe Armstrong撰写的一本经典著作,专注于介绍Erlang编程语言在并发、分布式和容错系统中的应用。本书适用于初学者和有一定经验的Erlang程序员。作者在书中讨论了如何利用...
- Erlang的程序设计思想是模拟人类的思考和交互方式。 - 通过Erlang的并发模型和消息传递机制,可以模拟现实世界中的交互模式。 3. **Erlang的特性**: - **进程模型**:Erlang的进程不是传统操作系统中的进程,...
在Windows环境下安装RabbitMQ,你需要先安装Erlang环境,因为RabbitMQ是用Erlang编程语言编写的。Erlang是一种面向并发的、函数式的编程语言,特别适合构建高可用、容错性强的分布式系统。文件“otp_win64_22.1.exe...
Erlang虚拟机(Erlang VM,也称为BEAM虚拟机)是Erlang编程语言的核心组成部分,它为Erlang提供了强大的并发特性和故障容错能力。基于Erlang VM的语言充分利用了这些优势,同时也引入了不同语法和编程范式的创新。 ...
在《Erlang编程指南》这本书中,作者Francesco Cesarini和Simon Thompson深入浅出地介绍了Erlang语言的基础和高级特性,涵盖了从进程通信到并发设计模式,再到OTP框架的使用。通过学习这本书,读者可以全面理解...
文档不仅包括对程序功能的描述,还应当包含对程序设计思想的解释和对潜在问题的预警。 Erlang编程规则的中文翻译版本提供了一系列编程和设计的最佳实践,这些规则和约定是Erlang社区多年经验的结晶。通过遵循这些...
### 并发需求下的Scala及Erlang语言的比较与使用 在当今的高并发、大数据处理场景下,选择合适的编程语言对于系统性能至关重要。在众多编程语言中,Scala和Erlang因其强大的并发处理能力和函数式编程特性而受到关注...
Erlang是一种函数式编程语言,由爱立信在1986年开发,主要用于构建高可用性、容错性和并发性的分布式系统。"Introducing Erlang"是Simon St. Laurent撰写的一本入门级教程,旨在帮助初学者理解和掌握Erlang的核心...
Erlang网络编程性能调优之旅 ...本文详细记录了Erlang网络编程性能调优的过程,从基本概念到高级技术,涵盖了Erlang语言的特点、网络编程的技术、性能优化的方法等多个方面,为读者提供了一个全面的知识体系。
ErlPort 是一个Erlang 库,用来帮助连接 Erlang 与其他编程语言。目前支持的是 Python 和 Ruby。Erlang 库使用 Erlang 端口协议 来简化Erlang 语言和 Erlang 外部术语格式 的连接,设置良好的数据类型映射。 ...
这是《 Erlang编程语言》的上一页,我们正在处理中,将那里的所有书籍都转换为新页面。 请再次检查此页面!!!
《Erlang编程》是一本深入探讨Erlang语言的图书,主要面向对并发处理、分布式系统和高可用性有需求的开发者。Erlang是一种为构建大规模并发系统而设计的函数式编程语言,它源自爱立信,以其在电信行业的成功应用而...
在深入理解Erlang程序设计的源码之前,我们需要了解Erlang的一些核心概念和特性。 1. **并发性**:Erlang的并发模型基于轻量级进程(Lightweight Processes,LWP),它们类似于操作系统中的线程,但资源消耗小得多...
Erlang语言的设计理念源自于Ericsson公司为解决电信系统中的高可用性和容错性问题。其主要特点包括: 1. **并行计算**:Erlang的进程模型使得它能轻松处理大量并发操作,这对于网络游戏中的多玩家同步和实时交互至...
erlang编程语言圣经 erlang从业人员的必备书籍 erlang语言开发入门
Erlang语言的语法有其独特性,它的并发编程风格与传统语言不同,需要一定的学习成本。 在并发模型方面,Go语言引入了goroutine,它是一种轻量级线程,可以通过channel进行通信。这种模型非常适合在现代多核处理器上...