[erlang-questions] dialyzer and behaviours
Siraaj Khandkar
siraaj@REDACTED
Sun Jul 20 00:10:43 CEST 2014
On 07/17/2014 08:02 PM, Richard A. O'Keefe wrote:
>
> On 17/07/2014, at 5:12 PM, Siraaj Khandkar wrote:
>> Richard, what I think Daniil is asking for is only time-depended in a
>> language like Erlang.
>
> Indeed. But C lets you load and unload modules,
> Fortran has done that on mainframes since the 60s,
> Lisp lets you load new stuff, Python lets you load
> new stuff, Smalltalk (even Animorphic Smalltalk)
> lets you load and replace stuff, Prolog (even Prologs
> with threads and web servers) let you load and replace
> stuff, ....
>
> "Languages *like* Erlang" in the relevant sense are
> abundant.
>
> It would make sense for Erlang to offer something like
> old-fashioned Lisp "block compilation" where a group
> of source files are compiled together and loaded together.
> That would permit not just things like cross-module
> optimisation but cross-module verification.
>
>> In a statically typed language with a module
>> system it'd be something like:
>>
>> signature MY_DB =
>> sig
>> val table : unit -> iolist
>> end
>>
>> functor Foo (Db_impl : MY_DB) =
>> struct
>> ...
>> end
>
> The tricky thing here is that ML has been implemented
> in two ways:
> ML
Richard, the suspense is killing me! :-)
More information about the erlang-questions
mailing list