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/03/31 13:36]
tvcutsem
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>
  
-=== Jump to ===+{{: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.
  
-The AmbientTalk/2 tutorial is subdivided into major chapters which each highlight a particular aspect of the language. These "aspects" can sometimes best be described as particular programming styles.+=== Jump to ===
  
   - [[preface|Preface]]   - [[preface|Preface]]
Line 12: Line 12:
     - [[basic#variables|Variables]]     - [[basic#variables|Variables]]
     - [[basic#tables|Tables]]     - [[basic#tables|Tables]]
-    - [[basic#functions|FunctionsClosuresBlocks]] +    - [[basic#functions|Functions]] 
-    - [[basic|Native Data Types]] +    - [[basic#closure|Closures]] 
-    - [[basic|Control Flow Primitives]]+    - [[basic#blocks|Blocks]] 
 +    - [[basic#keywords|Keywords]] 
 +    - [[basic#native_data_types|Native Data Types]] 
 +    - [[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]] +    - [[modular#namespaces_and_the_lobby|Namespaces and the lobby]] 
-    - [[modular|The Lobby]] +    - [[modular#Importing_objects|Importing objects]] 
-    - [[modular|Importing objects]] +    - [[modular#objects_as_traits|Objects as traits]] 
-    - [[modular|Objects as traits]] +    - [[modular#classifying_objects_using_type_tags|Classifying objects using type tags]] 
-    - [[modular|Classifying objects using stripes]] +    - [[modular#Exception_Handling|Exception Handling]] 
-    - [[modular|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]]
-  - [[tutorial:symbiosis|Symbiotic programming with Java]] +    - [[metaprogramming#multi-stage_generative_programming|Multi-stage Generative Programming]] 
-    [[symbiosis|Accessing Java classes]] +  - [[symbiosis|Symbiotic programming with Java]] 
-    [[symbiosis|Creating Java objects]] +    - [[symbiosis#Symbiosis_Architecture|Symbiosis Architecture]] 
-    - [[symbiosis|Using Java wrappers]] +    - [[symbiosis#Accessing_Java_from_within_AmbientTalk|Accessing Java from within AmbientTalk]] 
-    - [[symbiosis|Overloading]] +    - [[symbiosis#Accessing_AmbientTalk_from_within_Java|Accessing AmbientTalk from within Java]]
-    - [[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|Asynchronous Messages]] +    - [[actors#threads_vs_actors|Threads Vs Actors]] 
-    - [[actors|Actors and Far References]] +    - [[actors#actors_and_far_references|Actors and Far References]] 
-    - [[actors|Isolates]] +    - [[actors#asynchronous_message_sending|Asynchronous Message Sending]] 
-    - [[actors|Actor Mirrors]]+    - [[actors#isolates|Isolates]] 
 +    - [[actors#futures|Futures]] 
 +    - [[actors#actor_mirrors|Actor Mirrors]] 
 +    - [[actors#nesting_actors|Nesting Actors]]
   - [[distribution|Distributed Programming]]   - [[distribution|Distributed Programming]]
-    - [[distribution|Exporting and discovering objects]] +    - [[distribution#going_online|Going Online]] 
-    - [[distribution|Partial Failure Handling]] +    - [[distribution#exporting_and_discovering_objects|Exporting and Discovering Objects]] 
-  - [[syntax|The AmbientTalk Language Syntax]]+    - [[distribution#dealing_with_transient_failures|Dealing with Transient Failures]] 
 +    - [[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]] 
at/tutorial/tutorial.txt · Last modified: 2020/02/05 21:30 by elisag