[ada-france] [GNAT GPL 2007] Compilation d'un example objet du manuel Ada 2005.
Laurent GUERBY
laurent at guerby.net
Jeu 9 Aou 19:40:14 CEST 2007
On Thu, 2007-08-09 at 18:19 +0200, Pascal wrote:
> [...] Je traduis des sources de Pascal en Ada avec l'incontournable
> utilitaire P2Ada (http://blady.perso.orange.fr/a_savoir.html#p2ada)
> J'en viens au Pascal Objet (notamment le Mac Pascal) qui n'a pas la
> contrainte ci-dessus.
En pascal objet ne faut-il pas englober les primitives
par une construction "class" ? Pour moi ce n'est pas tres
different du type dans package Ada, a un detail
methodologique pres (cf ci apres).
> La traduction automatique en est forcément compliquée.
Pas tant que ça : il faut simplement generer un sous-package
avec les uniquement les types et specs de primitives et le
faire suivre par son les body de primitives, non ?
Pascal :
procedure main
class X
procedure Prim is
...
end Prim
end class
...
Ada :
procedure main
package XP is
type X
procedure Prim(X);
end XP;
package body XP
procedure Prim(X) is begin .. end
end XP
...
> Simple question : Quelle est la raison racine de ne pas permettre
> qu'Init puisse être une primitive du type Point dans ma version de
> basic_obj2 ?
Je pense que ce n'est pas une raison de securite mais plutot
pour forcer le programmeur a declarer des specifications separees
de l'implementation. (Il y a peut etre des details tres techniques
lies au "freezing point".)
Laurent
Plus d'informations sur la liste de diffusion Ada-France