0 0

这是什么错erlang5

-module(shop).
-export([total/1,totalMoney/1]).

cost(oranges) -> 5;
cost(newspaper) -> 6;
cost(apples) -> 7;
cost(pears) -> 8;
cost(milk) -> 9.

maps(F,[H|T]) -> [F(H)|maps(F,[T])];
maps(_,[]) -> [].

sum([]) -> 0;
sum([H|T]) -> H + sum([T]).

totalMoney(L) -> sum(maps(fun({What, N}) -> cost(What) * N end, L)).

total([{What,N}|T]) -> cost(What) * N + total(T);
total([]) -> 0.

---------------------------------------------------
shop:totalMoney([{apples,1},{milk,1}]).
** exception error: no function clause matching 
                    shop:'-totalMoney/1-fun-0-'([{milk,1}]) (shop.erl, line 16)
     in function  shop:maps/2 (shop.erl, line 10)
     in call from shop:maps/2 (shop.erl, line 10)
     in call from shop:totalMoney/1 (shop.erl, line 16)

2013年3月11日 14:34
目前还没有答案

相关推荐

    Erlang安装包

    Erlang的速错(quick fault recovery)机制意味着当错误发生时,系统可以快速检测并恢复,减少故障的影响。这与传统的异常处理不同,更倾向于快速失败并重新启动,以保持整体系统的稳定性。 在提供的压缩包文件中,...

    erlang-18.3.4.7-1.el6.x86_64.rpm

    rabbitmq依赖包。...●Fail-fast(中文译为速错),即尽可能快的暴露程序中的错误。 ●面向并发的编程(COP concurrency-oriented programming) ●函数式编程 ●动态类型 ●及早求值或严格求值 ●支持脚本运行

    Erlang安装手册

    这些进程通过消息传递而非共享内存来实现通信,这使得Erlang非常适合于构建高度并发的应用程序。与传统的操作系统线程相比,Erlang的进程更加轻量级,因此可以在单个系统上支持成千上万甚至更多的并发进程。 ##### ...

    why_i_choose_Erlang

    Erlang采取了一种独特的错误处理策略:“速错”(Fail Fast)。这意味着当遇到无法解决的问题时,程序应该迅速失败,而不是试图掩盖错误。这种做法有助于快速定位问题所在,并减少系统中的潜在风险。 #### Erlang...

    erlang环境配置借鉴.pdf

    Erlang 环境配置借鉴 Erlang 是一种功能强大的编程语言,广泛应用于大型分布式系统、实时系统和嵌入式系统等领域。为了更好地使用 Erlang,需要配置一个...这将帮助开发者更方便地使用 Erlang 语言进行开发和调试。

    Erlang在eclipse4.2.2里的开发编译工具

    这有助于编写整洁、无错的代码,同时减少了键入时间。 2. **重构工具**:Erlide包含了一套完整的重构工具,如重命名、提取函数、移动模块等,使得代码结构的调整变得简单易行。 3. **调试器**:Erlide内置了Erlang...

    erlang-rust-nif:在 Rust 中实现的 Erlang NIF 示例

    Rust 中的 Erlang NIF 这是一个如何在 Rust 中实现 NIF 的示例。 它对我有用,也可能对你有用,但如果它吃掉了你的作业,请不要生气。 虽然这将是可行的写现实世界的代码下面这个例子,因为整个erl_nif.h接口可用...

    Thrift RPC Erlang库大量数据时出错的解决

    是typeid_to_atom()的参数匹配‘:’出了错,这就奇怪了,减少rpc数据请求量,又正常,在确认使用方法没有问题后,想到的是rpc参数是不是有哪个默认参数有问题,开始想到buffer不够大,去看buffer大小的限制,发现是...

    holiday_pinger:Erlang + ClojureScript应用程序发送假期提醒

    【描述】"holiday_pinger"是构建在Erlang和Clojurescript基础上的,这两个语言各有优势。Erlang以其并发处理能力和分布式系统设计而闻名,适合构建高可用性和容错性的系统。ClojureScript是Clojure语言的一个方言,...

    opt_src和3.7.6mqtar.xz.zip

    标题中的"opt_src和3.7.6mqtar.xz.zip"暗示了这是一个包含特定版本的RabbitMQ安装包的压缩文件,其中"opt_src"可能是指将软件安装在`/opt/src`目录下的源代码,而"3.7.6mqtar.xz"可能是RabbitMQ 3.7.6版本的源码压缩...

    libtinfo.so.5 64位

    libtinfo.so.5 64位 请注意是64位的,别下载错了哦 。。

    RabbitMQ学习讲义

    发送者无需知道接收者,只需将消息放入队列,接收者则从队列中取出并处理消息,这使得系统能够独立扩展,提高性能,同时提供了错误恢复和流量控制的能力。 使用RabbitMQ的一个典型场景是在订单系统中。当用户下单时...

    如何在centos上使用yum安装rabbitmq-server

    rabbitmq安装之前需要安装socat,否则直接安装rabbitmq可能会报错 如果没有找到,则先安装epel源 yum -y install epel-release yum install socat rabbitMQ需要和erlang的版本互相匹配具体查看rabbitMQ和对应的...

    RabbitMQ完整压缩包

    包含安装Rabbitmq的Erlang、rabbitmq以及socat Erlang是一种通用的面向并发的编程语言。 其特点有:并发性、分布式、健壮性、软实时性、热代码升级、递增式代码装载、外部接口、速错等等等等

    面对软件错误构建可靠的分布式系统

    在ERLANG中,对于上述的问题的解决方式采用语言+库一起作用的方式来解决,满足在程序有错误的情况下,我们的代码依旧会按照合理的方式运行 本文不关注算法细节、硬件假设、软件工程方面的要求 而是关注与软件的容错...

    网络优化试题答案.doc

    话务量的单位是Erlang,表示通信设备在一段时间内的繁忙情况,定义为系统占用时间与总时间的比,为一个0到1的值。一个Erlang表示系统忙时为100%。 二、天线的电气参数 天线的电气参数包括天线增益、频带宽度、极...

    linux rabbitmq安装包

    linux rabbitmq安装资源包,主页有对应的erlang环境资源包,需要的自行下载,还有windows版本的不要下载错了

Global site tag (gtag.js) - Google Analytics