简单总结如何启动一个Erlang程序

简介: 一个例子

一个例子

这是取自SPOJ (强烈推荐这个OnlineJudge,几乎支持任何编程语言,google之)的第一道题目的答案。从标准输入读入N行整数,遇到42就退出。

Why 42 ? 
the answer to life, the universe and everything!
-module(tested).
-export([main/0]).
main() ->
    case io:get_line("") of
        {error, Why} -> io:format(Why);
        "42\n" -> void;
        Data -> io:format("~s~n",[Data]), main()
    end.
%% your module MUST be named "tested"

第1种方式,在erlang的shell中交互式编译运行

max@max-gentoo ~/Study/GitLab/SPOJ $ erl
Erlang/OTP 17 [erts-6.1] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V6.1  (abort with ^G)
1> c(tested).
{ok,tested}
2> tested:main()
2>

第2种方式,在命令行的提示符中运行

erl -noshell -s tested main -s init stop

第3种方式,碉炸天的erlang一行(没有perl一行易用)

erl -eval 'io:format("Memory:~p~n",[erlang:memory(total)]).' -noshell -s init stop

第4种方式,escript脚本

#!/usr/bin/escript
main(_) ->
     io:format("Hello World~n").
相关文章
|
SQL Oracle 关系型数据库
Oracle之如何组合去重
Oracle之如何组合去重
502 1
|
SQL 关系型数据库 MySQL
【MySQL】一文带你搞懂MySQL中的各种锁
【MySQL】一文带你搞懂MySQL中的各种锁
1232 0
|
Shell 网络架构
《cowboy 源代码分析第一部 (Erlang实现的http服务器)》
cowboy是基于ranch的http服务器。特点是功能强打(支持完整的http协议websocket,spdy等),简洁,轻量级。
《cowboy 源代码分析第一部 (Erlang实现的http服务器)》
|
存储 Dart
[Flutter]足够入门的Dart语言系列之常见运算符或操作符
Dart中的运算符提供对数据操作和处理的能力,其中的算术运算符、逻辑运算符非常符合现实中的使用情况,其他不同的运算符则有着自己的操作逻辑...
855 0
[Flutter]足够入门的Dart语言系列之常见运算符或操作符
|
JavaScript
Vue3基础(四)___Vue-Router
本文介绍了在Vue 3中如何使用`vue-router@4`进行路由管理,包括安装路由库、定义路由配置、在组件中使用`useRouter`和`useRoute`钩子函数,以及如何在组件中进行路由跳转和获取路由参数。
217 1
Vue3基础(四)___Vue-Router
|
11月前
|
存储 监控 对象存储
ACK容器监控存储全面更新:让您的应用运行更稳定、更透明
介绍升级之后的ACK容器监控体系,包括各大盘界面展示和概要介绍。
|
前端开发 Java 程序员
Spring Boot+Netty+Websocket实现后台向前端推送信息
学过 Netty 的都知道,Netty 对 NIO 进行了很好的封装,简单的 API,庞大的开源社区。深受广大程序员喜爱。基于此本文分享一下基础的 netty 使用。实战制作一个 Netty + websocket 的消息推送小栗子。
vue 中 axios 的安装及使用
本文介绍了在Vue项目中安装和使用axios的方法。首先通过命令`npm install axios --save-dev`安装axios,然后在组件的`created`生命周期钩子中使用`axios.get`异步获取数据,并将获取的数据更新到组件的`data`中。文中提供了完整的示例代码,包括安装命令、验证安装成功的步骤、Vue组件的模板、脚本和样式。
vue 中 axios 的安装及使用
|
关系型数据库 MySQL Linux
在CentOs7虚拟机Linux离线安装mysql5.6(亲测可用)
该博客文章详细记录了在CentOS 7虚拟机上离线安装MySQL 5.6版本的完整过程,包括下载安装包、导入虚拟机、卸载MariaDB、配置文件设置、服务启动和权限配置等步骤。
在CentOs7虚拟机Linux离线安装mysql5.6(亲测可用)
|
Linux 应用服务中间件 nginx
Linux 快速搭建 Overleaf 5.0 附中文字体及完整 TexLive 安装教程(2024最新版)
2024最新版 Linux 极速安装 Overleaf 5.0 手把手教学!附 XeLatex 修复,新增中文字体以及安装完整版 TexLive 教程!