At 7:31 AM -0700 4/23/04, Jeremy Epstein wrote: >Jim & Mary Ronback opined: >> I am hard put to find an example of a language feature which makes a >> system more secure but less safe or vice versa, in any context. Can >> anyone else think of one? > >Not 100%, but consider automatic garbage collection. Tends to make a system >more secure, because it's associated with languages that avoid pointers with >all their evilness.
Ada avoids the evils of pointers by using something called Access Values upon which mathematics is performed. But for garbage collection purposes those Access Values must be taken into account. Ada is specified so as to allow (but not require) garbage collection by an implementation, but to date no implementor has seen customer demand from the Ada-using segments for garbage collection. The only publicized instance of garbage collection in Ada was for Ada processors that target the Java Virtual Machine. So at least for Ada, garbage collection is less of a language feature and more of a compiler feature. The avoidance of pointer arithmetic in Ada is quite independent of garbage collection.
