visibility of a function in a module

Tony Rogvall tony@REDACTED
Sat Apr 12 23:51:54 CEST 2003


Chris Pressey wrote:
> On Sat, 12 Apr 2003 16:30:03 +0200
> "Joakim G." <jocke@REDACTED> wrote:
> 
> 
>>An unofficial top-ten (top-hundred) list of wanted/fixable language
>>features would actually be interesting to have around. We could even
>>make it pollable by people on this list. It could be good input to the
>>OTP team.
> 
> 
> Here's mine, sorted roughly by decreasing feasability:
> 
> 1. Put general-purpose base-conversion functions somewhere in stdlib
> (io, or math, or string) and deprecate those in httpd_util.
> 2. Move general-purpose string functions from httpd_util to string.
> 3. Move general-purpose date functions from httpd_util to calendar.
> 4. Fix regexp module.
> 5. Document all interfaces, esp. ones in common use (active_once, etc)
> 6. Document BEAM format.
> 7. Smaller distribution (split into core distribution + apps)
> 8. Opaque, guarded structs.
> 9. Type inference in linter that generates warnings only.
> 10. Arbitrary expressions in guards.
> 
> -Chris

Here is mine:

1. Put the OTP source code in CVS and make it accessible.
2. Use nice patches that people send :-)
3. Rentrant and thread safe emulator (SMP)
4. binary syntax updates, bitgroups! possible add -list -tuple and 
-msb|-lsb for bit reversal. One more syntax improvment whould to add 
record support in bitsyntax, something that I have to do by hand to day:
	-record(r,
		{
			a:16/integer,
			b:32/float
		}).
	<< X/#r >>.

5. charactar support UNICODE !!! with ord/chr/upper/lower support
6. module as objects, and in external format. This means that modules on 
disc should be in extrnal format. Think of the following:
	{ok,Bin} = file:read_file("somemodule"),
	Mod = binary_to_term(Bin),
	apply(Mod, my_func, Args).
or
	register_module(Name, Mod)
This was done in as a prototype in multithread erlang and worked very 
nicely!
7. nodes as objects. Today node name is somed kind of DNS name, this 
does not work for multi-protocol. The #<Node> should be something uniq 
not coded as an atom.
8. subnodes. (from SafeErlang). With orwith out SafeErlang, subnodes 
could be a nice way to handle safe environments with own name spaces 
etc. Possibly restrictions on number of processes and execution time etc 
could be added.
9. I think that will keep you busy for a while :-)
10. Not ready yet ?

Have fun/0.

/Tony


-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3237 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20030412/597e46d1/attachment.bin>


More information about the erlang-questions mailing list