Logtalk
Logtalk is an object-oriented logic programming language that extends and leverages the Prolog language with a feature set suitable for programming in the large. As a multi-paradigm language, it includes support for encapsulation and data hiding, separation of concerns and enhanced code reuse, both prototypes and classes, protocols (interfaces), component-based programming through category-based composition, event-driven programming, and high-level multi-threading programming. Logtalk uses standard Prolog syntax with the addition of a few operators and directives.
See Also
Tasks
- Abstract type
- Ackermann function
- Add a variable to a class instance at runtime
- Atomic updates
- Averages/Arithmetic mean
- Break OO privacy
- Call an object method
- Catamorphism
- Character codes
- Checkpoint synchronization
- Classes
- Closures/Value capture
- Comments
- Concurrent computing
- Count occurrences of a substring
- Currying
- Delegates
- Dining philosophers
- Documentation
- Dot product
- Dynamic variable names
- Enforced immutability
- Environment variables
- Even or odd
- Exceptions
- Execute a system command
- Flatten a list
- Generic swap
- Greatest element of a list
- Hello world!
- Hello world/Newline omission
- Hello world/Standard error
- Hello world/Text
- IBAN
- Include a file
- Increment a numerical string
- Inheritance/Multiple
- Inheritance/Single
- Introspection
- Jump anywhere
- Leap year
- Literals/Integer
- Metered concurrency
- Multiple distinct objects
- Partial function application
- Permutations
- Power set
- Real constants and functions
- Respond to an unknown method call
- Scope modifiers
- Send an unknown method call
- Sieve of Eratosthenes
- Singleton
- Singly-linked list/Traversal
- Sleep
- Sorting algorithms/Merge sort
- Sorting algorithms/Quicksort
- Stack
- Start from a main routine
- Strip whitespace from a string/Top and tail
- Substring
- Substring/Top and tail
- Sum of squares
- Synchronous concurrency
- Tokenize a string
- Tree traversal
- Trigonometric functions
- Zebra puzzle