comp.lang.ada
 help / color / mirror / Atom feed
* Exception_Occurence and language designers
@ 2017-12-04 11:17 Mehdi Saada
  2017-12-04 12:32 ` Simon Wright
  2017-12-04 17:43 ` Jeffrey R. Carter
  0 siblings, 2 replies; 11+ messages in thread
From: Mehdi Saada @ 2017-12-04 11:17 UTC (permalink / raw)


Curiously I find very interesting details of the norm, the inner working. Maybe I have a vocation of language lawyer ?
This time it's about exceptions.

Why have created both Exception_Identity and Exception_Occurence, often for the same subprograms ?
Especially, about Exception_Occurence:
Was it that the designers wanted to maintain compatibility, rather than breaking the last system and implementing something syntaxically closer to "subtype/type File_Not_found is Exception/new Exception; Not_Found_Error: File_Not_Found", a system closer to the type/subtype/instance model, but for exceptions ? Has it been thought about at one time ? To me it seems the Exception_Occurence'name declaration below, looks a lot like an object declaration, the exception Fine_Not_Found being a type.
Not the first case I thought it could be nicer to syntaxic constructs, rather than relying on predefined libraries (as with "controlled") ?

    when Not_Found_Error : File_Not_Found =>  Text_IO.Put_Line(Exceptions.Exception_Message(Not_Found_Error));


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2017-12-05 20:48 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-04 11:17 Exception_Occurence and language designers Mehdi Saada
2017-12-04 12:32 ` Simon Wright
2017-12-04 14:00   ` Mehdi Saada
2017-12-04 14:31     ` Dmitry A. Kazakov
2017-12-04 20:27       ` G. B.
2017-12-04 20:55         ` Dmitry A. Kazakov
2017-12-05  0:16           ` G. B.
2017-12-05  8:35             ` Dmitry A. Kazakov
2017-12-05 20:05               ` G. B.
2017-12-05 20:48                 ` Dmitry A. Kazakov
2017-12-04 17:43 ` Jeffrey R. Carter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox