=========
Summary
=========

---------
Summary
---------

* Ada allows user-defined overloading

   - Identifiers and operator symbols

* Benefits easily outweigh danger of senseless names

   - Can have nonsensical names without overloading

* Compiler rejects ambiguous calls
* Resolution is based on the calling context

   - *Parameter and Result Type Profile*

* Calling context is those items present at point of call

   - Thus modes etc. don't affect overload resolution

* User-defined equality is allowed

   - But is tricky
