Object Oriented

0 views
Skip to first unread message

Administrator

unread,
Mar 31, 2009, 3:19:33 PM3/31/09
to Erlang Etna User Group
ciao,
spesso mi ritrovo a dover accedere ad un record che si trova all'
interno di un altro.
Per quanto ne so non si può scrivere Var#record.value.value2.
Si potrebbe integrare in erlang una programmazione ad oggetti debole ?
Insomma poter fare almeno obj.val.obj.
Ciao.

Roberto

unread,
Mar 31, 2009, 6:53:44 PM3/31/09
to erlan...@googlegroups.com
Un record altro non e' che "syntactic sugar". Non esiste un vero e
proprio tipo "record" in Erlang, per cui e' normale dover specificare
il tipo cui ci si sta riferendo, ogni volta che lo si utilizza.
Puoi sempre uscirtene con qualcosa del tipo:

-module(foo).

-compile(export_all).

-record(name, {
firstname :: string(),
surname :: string()
}).

-record(student, {
id :: integer(),
name :: #name{}
}).

name() ->
Name = #name{firstname = "Foo", surname = "Bar"},
Student = #student{id = 1, name = Name},
(Student#student.name)#name.firstname.

Saluti,

Roberto Aloi
http://aloiroberto.wordpress.com

2009/3/31 Administrator <gob...@gmail.com>:

Reply all
Reply to author
Forward
0 new messages