User Tools

Site Tools


at:tutorial:tutorial

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
at:tutorial:tutorial [2007/05/04 09:36]
elisag adding
at:tutorial:tutorial [2009/11/21 07:46]
tvcutsem
Line 1: Line 1:
 ====== AmbientTalk/2 Tutorial ====== ====== AmbientTalk/2 Tutorial ======
  
-<note>The tutorial is still under heavy construction!</note>+<note>This is the first version of the tutorial.  Do not hesitate to [[http://prog.vub.ac.be/amop/start#contact|contact]] us with suggestions for improvements!</note>
  
 {{:at:atlogo.jpg?60  }} The AmbientTalk/2 tutorial is subdivided into major chapters which each highlight a particular aspect of the language. These "aspects" can sometimes be best described as particular programming styles. {{:at:atlogo.jpg?60  }} The AmbientTalk/2 tutorial is subdivided into major chapters which each highlight a particular aspect of the language. These "aspects" can sometimes be best described as particular programming styles.
Line 19: Line 19:
     - [[basic#control_flow_constructs|Control Flow Constructs]]     - [[basic#control_flow_constructs|Control Flow Constructs]]
   - [[objects|Object-oriented Programming]]   - [[objects|Object-oriented Programming]]
-    - [[objects|Objects, fields and methods]] +    - [[objects#Objects,_fields_and_methods|Objects, fields and methods]] 
-    - [[objects|Sending messages]] +    - [[objects#Sending_messages|Sending messages]] 
-    - [[objects|Cloning and instantiation]] +    - [[objects#Cloning_and_instantiation|Cloning and instantiation]] 
-    - [[objects|Delegation and Dynamic Inheritance]] +    - [[objects#Delegation_and_cloning|Delegation and cloning]] 
-    - [[objects|Delegation and cloning]] +    - [[objects#Delegation_and_dynamic_inheritance|Delegation and dynamic inheritance]] 
-    - [[objects|First-class Delegation]] +    - [[objects#First-class_delegation|First-class delegation]] 
-    - [[objects|External definitions]] +    - [[objects#Encapsulation|Encapsulation]] 
-    - [[objects|A word about encapsulation]] +    - [[objects#Uniform_Access|Uniform Access]] 
-  - [[multiparadigm|Combining functions and objects]] +  - [[multiparadigm|On Scoping, Closures, Methods and Messages]] 
-    - [[multiparadigm|Nesting  Objects]] +    - [[multiparadigm#lexical_scope_vs_object_scope|Lexical Scope vs Object Scope]] 
-    - [[multiparadigm|Methods vs Closures]] +    - [[multiparadigm#nesting_objects|Nesting Objects]] 
-    - [[multiparadigm|Method selection]] +    - [[multiparadigm#methods_vs_closures|Methods vs Closures]] 
-    - [[multiparadigm|Higher-order Functions,Methods,Messages]]+    - [[multiparadigm#external_methods_and_fields|External Methods and Fields]] 
 +    - [[multiparadigm#first-class_methods|First-class Methods]] 
 +    - [[multiparadigm#first-class_messages|First-class Messages]]
   - [[modular|Modular Programming]]   - [[modular|Modular Programming]]
     - [[modular#namespaces_and_the_lobby|Namespaces and the lobby]]     - [[modular#namespaces_and_the_lobby|Namespaces and the lobby]]
     - [[modular#Importing_objects|Importing objects]]     - [[modular#Importing_objects|Importing objects]]
     - [[modular#objects_as_traits|Objects as traits]]     - [[modular#objects_as_traits|Objects as traits]]
-    - [[modular#classifying_objects_using_stripes|Classifying objects using stripes]]+    - [[modular#classifying_objects_using_type_tags|Classifying objects using type tags]]
     - [[modular#Exception_Handling|Exception Handling]]     - [[modular#Exception_Handling|Exception Handling]]
 +    - [[modular#Escaping_continuations|Escaping Continuations]]
   - [[metaprogramming|Metaprogramming]]   - [[metaprogramming|Metaprogramming]]
     - [[metaprogramming|AmbientTalk without syntactic sugar]]     - [[metaprogramming|AmbientTalk without syntactic sugar]]
     - [[metaprogramming|Quasiquoting and splicing]]     - [[metaprogramming|Quasiquoting and splicing]]
     - [[metaprogramming|First-class abstract grammar]]     - [[metaprogramming|First-class abstract grammar]]
 +    - [[metaprogramming#multi-stage_generative_programming|Multi-stage Generative Programming]]
   - [[symbiosis|Symbiotic programming with Java]]   - [[symbiosis|Symbiotic programming with Java]]
-    - [[symbiosis|Accessing Java classes]] +    - [[symbiosis#Symbiosis_Architecture|Symbiosis Architecture]] 
-    - [[symbiosis|Creating Java objects]] +    - [[symbiosis#Accessing_Java_from_within_AmbientTalk|Accessing Java from within AmbientTalk]] 
-    - [[symbiosis|Using Java wrappers]] +    - [[symbiosis#Accessing_AmbientTalk_from_within_Java|Accessing AmbientTalk from within Java]]
-    - [[symbiosis|Overloading]] +
-    - [[symbiosis|Symbionts]] +
-    - [[symbiosis|Conversions]] +
-    - [[symbiosis|Thread-Actor Symbiosis]]+
   - [[reflection|Reflective Programming]]   - [[reflection|Reflective Programming]]
-    - [[reflection|Mirrors]] +    - [[reflection#mirrors|Mirrors]] 
-    - [[reflection|Mirages]] +    - [[reflection#mirages|Mirages]] 
-    - [[reflection|The Metaobject Protocol]]+    - [[reflection#The_Metaobject_Protocol|The Metaobject Protocol]]
   - [[actors|Concurrent Programming with Actors]]   - [[actors|Concurrent Programming with Actors]]
     - [[actors#threads_vs_actors|Threads Vs Actors]]     - [[actors#threads_vs_actors|Threads Vs Actors]]
Line 63: Line 63:
     - [[actors#nesting_actors|Nesting Actors]]     - [[actors#nesting_actors|Nesting Actors]]
   - [[distribution|Distributed Programming]]   - [[distribution|Distributed Programming]]
-    - [[distribution#starting_the_network..|Starting the Network]] +    - [[distribution#going_online|Going Online]] 
-    - [[distribution#exporting_and_discovering_objects|Exporting and discovering objects]] +    - [[distribution#exporting_and_discovering_objects|Exporting and Discovering Objects]] 
-    - [[distribution#partial_failure_handling|Partial Failure Handling]] +    - [[distribution#dealing_with_transient_failures|Dealing with Transient Failures]] 
-    - [[distribution#garbage_collecting_remote_referencesGarbage Collecting Remote References]]+    - [[distribution#dealing_with_permanent_failures|Dealing with Permanent Failures]] 
 +    - [[distribution#taking_offline_remote_objects|Taking Offline Remote Objects]] 
 +  - [[appendix|Appendix: Libraries]] 
 +    - [[appendix#unit_testing_framework|Unit testing framework]] 
 +    - [[appendix#basic_collections|Basic Collections]] 
 +    - [[appendix#top-level_functions|Top-level Functions]] 
 +    - [[appendix#custom_exceptions|Custom Exceptions]] 
 +    - [[appendix#language_extensions|Language Extensions]] 
 +    - [[appendix#utilities|Utilities]]
  
-  - [[syntax|The AmbientTalk Language Syntax]] 
at/tutorial/tutorial.txt · Last modified: 2020/02/05 21:30 by elisag