# Introduction

## Inception

**Golang** (GO) is another high-level programming language. It's usually used to make **backend stuff**. `Backend stuff`, I mean, for example rest API for your website, CMS for your website or chatbot. But, as it always is, the community made a lot of frameworks based on Golang, for example, A framework to use Golang as a frontend language (ex. **Buffalo**).

Also, you can create Desktop UI in Golang. Amount of frameworks for Golang is not such a big deal as it was for JavaScript, but it's nice to have something more than just pure language.

## More engineering stuff here

Golang is a statically typed compiled language in the tradition of C, but with some more features. Overall, **Go's syntax is similar to C's syntax**.

That features as I said are for example:

* **garbage collection**
* **structural typing**
* **concurrent programming**

Tools for Golang, compiler and source code of Golang are free and open-source.

If you want to see the full list of Golang libraries, packages, and stuff, you can see it [here](https://github.com/avelino/awesome-go#database).

> The file extension for Golang is **.go**


---

# 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://cpb.gitbook.io/book/languages/golang/intro.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.
