# Target languages

<figure><img src="/files/b8ESTeVq0eKR4s15pHAE" alt=""><figcaption><p>Telosys 4.0 predefined target languages</p></figcaption></figure>

With Telosys you can generate any type of language by managing yourself all the target language specificities. But for the most common languages you can indicate the nature of your target language so as to simplify the writing of templates.

The target language can be specified in the template files (.vm) using the following directive :

```
#set( $env.language = 'LanguageName' )
```

Thus Telosys will be able to apply certain default behaviors, for example to convert the 'neutral type' of the model into a language-specific type or to determine literal values adapted to the language.

By default the target language is Java.

In the templates the target language has an influence on :

* $attribute.**type**&#x20;
* $attribute.**fullType**&#x20;
* $attribute.**simpleType**&#x20;
* $attribute.**wrapperType**
* $attribute.**isPrimitiveType()**

All the pre-configured target languages currently supported by Telosys are defined below :

* [C++](/target-languages/cplusplus.md)
* [C#](/target-languages/csharp.md)
* [Golang](/target-languages/golang.md)
* [Java](/target-languages/java.md)
* [JavaScript](/target-languages/javascript.md)
* [Kotlin](/target-languages/kotlin.md)
* [PHP](/target-languages/php.md)
* [Python](/target-languages/python.md)
* [Scala](/target-languages/scala.md)
* [TypeScript](/target-languages/typescript.md)

For more detailed information, see the auto-generated documentation :&#x20;

* **Latest version**&#x20;
  * [Telosys 4.3.0 - Target languages](https://www.telosys.org/doc/v430/languages/index.html)
* Previous versions :&#x20;
  * [Telosys 4.1.0 - Target languages](https://www.telosys.org/doc/v410/languages/)
  * [Telosys 4.0.0 - Target languages](https://www.telosys.org/doc/v400/languages/index.html)
  * [Telosys 3.3.0 - Target languages](https://www.telosys.org/doc/v330/languages/index.html)


---

# 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://doc.telosys.org/target-languages.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.
