> For the complete documentation index, see [llms.txt](https://zaidlang.gitbook.io/z/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zaidlang.gitbook.io/z/language/method-calls.md).

# Method Calls

Zaidlang is deeply object oriented, so most code consists of invoking methods on objects, usually something like this:

```dart
dog.speak("Throw the ball!")
```

You have a *receiver* expression (here `dog`) followed by a `.`, then a name (`speak`) and an argument list in parentheses (`("Throw the ball!")`). Multiple arguments are separated by commas:

```dart
dog.command("fetch", "ball")
```

The argument list can also be empty:

```dart
dog.sit()
```

Zaidlang executes a method call like so:

1. Evaluate the receiver and arguments from left to right.
2. Look up the method on the receiver's object.
3. Invoke it, passing in the argument values.
