User Manualï
- Declarative object-oriented programming
- Main features
- Integration of logic and object-oriented programming
- Integration of event-driven and object-oriented programming
- Support for component-based programming
- Support for both prototype and class-based systems
- Support for multiple object hierarchies
- Separation between interface and implementation
- Private, protected and public inheritance
- Private, protected and public object predicates
- Parametric objects
- High level multi-threading programming support
- Smooth learning curve
- Compatibility with most Prolog systems and the ISO standard
- Performance
- Logtalk scope
- Nomenclature
- Messages
- Objects
- Protocols
- Categories
- Predicates
- Inheritance
- Event-driven programming
- Multi-threading programming
- Error handling
- Reflection
- Writing and running applications
- Starting Logtalk
- Running parallel Logtalk processes
- Source files
- Multi-pass compiler
- Compiling and loading your applications
- Compiler errors, warnings, and comments
- Loader files
- Libraries of source files
- Settings files
- Compiler linter
- Compiler flags
- Reloading source files
- Batch processing
- Optimizing performance
- Portable applications
- Conditional compilation
- Avoiding common errors
- Coding style guidelines
- Printing messages and asking questions
- Term and goal expansion
- Documenting
- Debugging
- Compiling source files in debug mode
- Procedure box model
- Activating the debugger
- Defining breakpoints
- Defining log points
- Tracing program execution
- Debugging using breakpoints
- Debugging commands
- Customizing term writing
- Context-switching calls
- Debugging messages
- Using the term-expansion mechanism for debugging
- Ports profiling
- Debug and trace events
- Performance
- Source code compilation modes
- Local predicate calls
- Calls to imported or inherited predicates
- Calls to module predicates
- Messages
- Automatic expansion of built-in meta-predicates
- Inlining
- Generated code simplification and optimizations
- Size of the generated code
- Circular references
- Debug mode overhead
- Other considerations
- Installing Logtalk
- Prolog integration and migration