My current post on LinkedIn:
Safe language features:
– range check
– arithmetic overflow check
– stack overflow check
– strict typing
– if it also uses dynamic typed variables then a safe runtime type check mechanism
– if a variable goes out of scope, its resources must be freed
– if an object has a live reference it should not be freed
– You should be never allowed to free a resource twice or more
– nil pointer check, or completely avoid pointers (Java!)
– no nil value allowed to assign to any variable (it’s insane that in Java a String could be nil, it should be empty string instead of nil)
– no object should have a nil value, they should be empty object instead.
– no access across freed or otherwise invalid pointer
– code analyzer to detect (if possible) infinite loops
– exception handling, do not allow empty catch blocks or any swallowing of an exception
– detailed stack trace and memory allocation map
…and that’s it for now…
Excerpt from my free book, Lander.
“The Eye has not moved for years. The oil froze on its shafts, dust dripped from its lenses, and cobwebs grew thick and soft on its tiny gears. He slept, and so did the others. Their long dreams were seldom disturbed by a bird flying there, or a cat wandering among the ruins, but these also disappeared immediately, and the dream became even calmer. The city was captured in a motionless image on the glowing surface of hidden mirrors, the stones and leaking smoke, the dazzling sunlight in the puddles, and the dust rising and settling again, all lived in millions of silver nerves in a single moment. Man had never walked here, and even the wind seldom arose to bring smoke and soot from somewhere far away. The unchanging time showed itself only in the cycle of light and darkness, in the steady pounding of the rain, the change waiting in the metal body of the machines, tense in steel clock springs.
The day after the storm awakened the city with new voices. It wasn’t the wind that walked between the walls, it wasn’t the everyday noises known to boredom, it wasn’t the swaying of wings, and it wasn’t the knocking of rain. The air was filled with fresh and lively nesses, footprints drawing and multiplying on the cobbled pavers. A visitor approached and the Eye moved slowly. Someone walked among the ruins, carefully avoiding the piles of debris. It was a human form, but the Eye had not yet seen it clearly. Something moved, awoke, and ran through the silver threads. As it passed, the motionless images came to life and ran further into the depths where the Brain was asleep. Sparks popped, blue and red sparks woke the Brain, and then arms lifted him out of the oil bath. A soft, warm light glowed inside the blurred interior of the sphere, and the School of Music began to awaken. Fresh oil dripped down the axes that moved the eyes, and diligent hands wiped the lenses and mirrors clean. The Eye saw again and woke the others in a row. The Gate, Stairs, Corridors and Halls. Tiny animals hid from their hidden lair and washed the mosaic stones and walls clean. When they were done with everything, they disappeared as fast as they came out. The Brain instructed, the Eye moved, and the image began to sharpen. A boy was standing on the uninhabited road.”
You can read the book: https://play.google.com/store/books/details/Sz%C5%B1cs_J%C3%A1nos_Lander?id=8UY5EAAAQBAJ
I published my science-fiction short-story selection on Google Play, it’s free to read and download: