我正在Erlang建立一个简单的控制台游戏。过去两天我一直在编写一些Erlang模块和测试,并且一切工作正常(在各个模块中)。我很困惑如何运行游戏并让模块一起工作。如何让Erlang模块相互交谈?
我一直在阅读“更好的”书,并阅读了一些有关OTP,但它感到压倒性的。有一个简单的教程,我可以跟随某个地方吗?这本书中的OPT示例是否过度了解我所要做的事情?
更新:感谢您的反馈。这是一个更具体的问题。
我有两个模块.....
Console_IO模块
-module(console_io).
-export([display/1, display_welcome_message/0, gets/1]).
display(Message) ->
io:format(Message).
gets(Message) ->
{ok, [X]} = io:fread(Message, "~s").
io:format("You entered '~s'.", [X]);
display_welcome_message() ->
display("Welcome to the game!").
秘密代码模块
-module(secret_code).
-export([generate/0, symbols/0]).
generate() ->
random:seed(now()),
[lists:nth(random:uniform(6), symbols()) || _ <- lists:seq(1, 4)].
symbols() ->
["b","g","p","r","y","o"].
这两个模块在不同的文件。我希望这些模块彼此交谈,以便用户可以输入猜测,试图猜测密码,并且游戏返回“是”或“否”。
我想两行添加到我的“得到”语句来生成密码,并将其与猜测:
-module(console_io).
-export([display/1, display_welcome_message/0, gets/1]).
display(Message) ->
io:format(Message).
gets(Message) ->
{ok, [X]} = io:fread(Message, "~s"),
Code = secret_code:generate,
Code -- [X].
display_welcome_message() ->
display("Welcome to the game!").
我知道我不是在正确的轨道上。有没有简单的方法来做到这一点?
你应该添加一些更具体的例子和代码,否则你的问题不适合该网站。请阅读[FAQ](http://stackoverflow.com/faq)。 – 2013-05-09 04:56:51