# Parentheses

Parentheses (`( )`), can help your code load and run much more efficiently. Sometimes, you'll have long lines or expressions that Skript will struggle to parse. Putting parenthesis around expressions and objects tells Skript that all of that is one thing, mitigating the need for Skript to think about possible combinations.

You should use parentheses whenever you have a long(er) expression for something. \[AND LISTS]

Technically, you could use parentheses literally everywhere, even turning `1` into `(1)`. This is redundant as `1` is already a really compact object. Parentheses have greatest effect when around objects that are multiple words or even many phrases long.

Examples:

{% code overflow="wrap" lineNumbers="true" %}

```java
set player's metadata tag "example" to player's metadata tag "example" + 1
set (player's metadata tag "example") to (player's metadata tag "example") + 1
```

{% endcode %}

{% code overflow="wrap" lineNumbers="true" %}

```java
name of slot 13 of player's inventory
(name of (slot 13 of player's inventory))
```

{% endcode %}

{% code overflow="wrap" lineNumbers="true" %}

```java
int tag "example" of NBT compound of {_item}
(int tag "example" of (NBT compound of {_item}))
```

{% endcode %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://x8ight.gitbook.io/syntask/optimisations/parentheses.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
