This is a somewhat subjective judgment, but
an example of unusual expressiveness will illustrate the property. Perl offers the ???if??? conditional familiar to us
in most languages, and Perl also offers the ???unless??? conditional, which is the converse of ???if.??? Having both
forms can be called ???syntactical sugar,??? since there is no functional requirement for a language to have both,
but having both allows more natural expression of some conditions.
Expressiveness is also relative to particular types of applications. C??™s built-in facilities for manipulating
bits mark it as unusually expressive in that way, and make it an especially good language for writing operating
systems and drivers. Matlab??™s matrix manipulation syntax is wonderfully expressive for matrix algebra applications
like statistics and image processing.
Another very desirable trait in a language is regularity. Regularity means consistency of behavior, consistency
of appearance, and avoidance of special cases. In C, an example of an irregularity is the use of the == Boolean operator.
Any two values can be compared using ==, but two arrays cannot be compared using ==; arrays must be compared
element by element. The == operator cannot be applied in a general way to all data structures.
Pages:
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172