[net.lang] What makes a reasonable language?

mwm@ucbopal.berkeley.edu (Mike (I'll be mellow when I'm dead) Meyer) (03/27/86)

In article <7947@watrose.UUCP> tohaapanen@watrose.UUCP (Tom Haapanen) writes:
>In my opinion any reasonable programming language has the following
>features:
>	- reasonable (!) syntax and variable name length
>	- named subroutines, with parameters and results
>	- dynamic local storage allocation (to allow for recursion)
>	- control structures: if...then...else, while...end,
>		for...end, case
>	- data structures: arrays and records, with dynamic
>		allocation possible (to allow variable-sized structures)
>

You forgot one very important one:

	- data abstraction: a way to package a set of data structures and
		routines into a single catagory.

[I know, I know - that isn't nearly what data abstraction is about. You try
and define it, including the correct typing magic, in two lines!]

When it comes to subsets, I'm willing to forgive almost anything, as long as
the language providesd some facility suitable for the problem at hand that
makes it easier to use than anything else I can get my hands on :-).

	Still looking for a reasonable language,
	<mike