• No results found

«Object-Oriented Multi-Methods in Cecil» Craig Chambers (Cours IFT6310, H08)

N/A
N/A
Protected

Academic year: 2021

Share "«Object-Oriented Multi-Methods in Cecil» Craig Chambers (Cours IFT6310, H08)"

Copied!
28
0
0

Loading.... (view fulltext now)

Full text

(1)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08)

«

Object-Oriented Multi-Methods in Cecil

»

Craig Chambers

(Cours IFT6310, H08)

Mathieu Lemoine

2008/02/25

Craig Chambers : Professeur `

a l’Universit´

e de Washington au

epartement de

Computer Science and Engineering, maintenant

ing´

enieur chez Google `

a leur d´

epartemment de Seatle.

(2)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08)

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(3)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Introduction – Contexte

Multi-M´ethodes

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(4)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Introduction – Contexte

Multi-M´ethodes

Multi-M´

ethodes Vs Message Passing

Syntaxes

Message Passing

+

Privil´

egier 1 argument

Object Centred

(lecture, d´

etection de l’object principale)

-Privil´

egier plusieurs arguments

Pas de dispatche multiple (difficile)

(5)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Introduction – Contexte

Multi-M´ethodes

«

Design Patterns : Elements of Reusable Object-Oriented

Software

»

de Gamma et al.

«

Design Pattern Visitor

»

(p 341 `

a 344)

«

issues that arise when you apply the Visitor Pattern : Double

Dispatch

»

(6)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Introduction – Contexte

Multi-M´ethodes

Multi-M´

ethodes Vs Message Passing

Syntaxes multi-m´

ethodes

+

Permet de privil´

egier plusieurs arguments.

-Pas

Object Centred

Ambigu¨ıt´

e, Conflits

Encapsulation

(7)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Introduction – Contexte

Multi-M´ethodes

«

Structured Programming with go to Statements

»

de

Donald E. Knuth

«

Multi-way branching is an important programming technique

»

(p. 290)

«

One of the nice properties of his syntax is that the word repeat

occurs naturally

»

(p.279)

Comparaison de la syntaxes des langages de prgrammation.

«

a way we rarely think about go to statements

»

(p. 275)

Multi-M´

ethodes (fonctionnalit´

ees fourniees par l’OO).

(8)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Introduction – Contexte

Cecil

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(9)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Introduction – Contexte

Cecil

Le langage

evelopp´

e `

a UWashington d`

es 1991, Projet

Vortex

Orient´

e Objet, non

Object Centred

Pas de classes mais des prototypes

eritage distinct pour interface et comportement

Utilis´

e pour d´

evelopper et ”tester” de nouveaux concepts et

paradigmes

(10)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

R´esolution des ambigu¨ıt´es

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(11)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

R´esolution des ambigu¨ıt´es

Les r`

egles de r´

esolution des multi-m´

ethodes

efinition de la sp´

ecialisation

Objets :

A

>

B

A

erite de

B

Arguments

a

d’impl´

ementations d’une m´

ethode

m

:

m1

>

m2

l’objet attendu pour

a

dans

m1

>

celui dans

m2

Impl´

ementations d’une m´

ethode

m

:

m1

>

m2

⇔ ∀

argument de

m,

m1

m2

Appel de l’impl´

ementation la plus sp´

ecialis´

ee

Si ambigu¨ıt´

e

erreur `

a la compilation

(12)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

R´esolution des ambigu¨ıt´es

(13)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

R´esolution des ambigu¨ıt´es

(14)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Encapsulation

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(15)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Encapsulation

Multi-M´

ethodes privil´

egi´

ee

Multi-M´

ethodes

dans

tous les objets

sp´

ecialisant

(16)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Encapsulation

Multi-M´

ethodes priv´

ees

Multi-M´

ethodes d´

eclar´

ees priv´

ees par rapport `

a l’ensemble de leurs

objets

sp´

ecialisants

(17)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Langage Object-Centred

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(18)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Langage Object-Centred

Description d’un environnement de programmation

Cecil

n’est pas

Object-Centred

(19)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Future Work

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(20)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Future Work

Future Work

Impl´

ementation

(21)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Related Work

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(22)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Related Work

Related Work

Principalement CLOS et son pr´

ed´

ecesseur CommonLoops

C++, Haskell

Kea, NOAL, RPDE

3

SELF

(23)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Conclusion

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(24)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Pr´esentation de l’article

Conclusion

Conclusion

L’auteur propose une impl´

ementation des multi-m´

ethodes prennant

en compte l’encapsulation ainsi qu’une notation

Object-Centred

pour l’environnement de d´

eveloppement.

(25)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Discussion

1

Introduction – Contexte

Multi-M´

ethodes

Cecil

2

Pr´

esentation de l’article

esolution des ambigu¨ıt´

es

Encapsulation

Langage Object-Centred

Future Work

Related Work

Conclusion

3

Discussion

(26)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Discussion

Discussion

+

Pr´

esentation d’un nouveau concept permettant d’utiliser les

multi-m´

ethodes dans un contexte Orient´

e Objet ou

Object

Centred

-Organisation un peu bancale

Explications quelques fois obscures ou incompl`

etes

Pas d’impl´

ementation

(27)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08) Bibliographie

Bibliographie

Gamma et al., 1995 :

«

Design Patterns : Elements of

Reusable Object-Oriented Software

»

Addison-Wesley

Publishing Company

Donald E. Knuth, 1979 :

«

Structured programming with go to

statements

»

ACM Comput. Surv. 6, 4 (Dec. 1974), 261-301.

Projet

Vortex

: http ://www.cs.washington.edu/research

/projects/cecil/www/vortex.html

(28)

«Object-Oriented Multi-Methods in Cecil»Craig Chambers (Cours IFT6310, H08)

The End !

References

Related documents

better cognitive performance among the malnourished children, clearly indicate that potato flour weaning bis- cuits undoubtedly helps to improve the nutritional pic- ture and health

‘ ”As for Me, this is My covenant with them,” says the Lord: “My Spirit which is upon you, and My words which I have put in your mouth shall not depart from your mouth, nor from

• generally the locks on the River Thames, namely King's, Godstow, Osney, Iffley and Sandford, create local groundwater recharge zones in the upstream areas. Conversely, the by-pass

(1) - (4) using the LS-PWM scheme only switching states 1, 2, 4, 8 are synthesized, neglecting the extra degrees of freedom that o ff ers the converter topology with the

In the first quarter of 2011 dabigatran produced two different kinds of signals of major drug risk: a large volume of total serious reports, and large numbers of reports for a

(emphasis added). The Court has applied in equal protection cases a deferential standard of review in cases dealing with economic regulation. The constitutional

In mucinous BOTs, cystectomy is not recommended as a treatment to preserve fertility due to the high risk of recurrence in the form of carcinoma (according to some studies up to 13%

Before even embarking on the search for a horse, there are several issues that need careful consideration, including the level of commitment (both in terms of time and finances)