# Syntax 101

**JM-**'s Syntax is characterized by the facts that it *mixes* 2 programming languages:\
**C** and **C++** and is also [*edgy af*](https://www.urbandictionary.com/define.php?term=edgy).

<figure><img src="https://560939383-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFHN1z3VqR1ZzKSMrPQF7%2Fuploads%2F48wdA0MvfF9uDew0WA7f%2Fimage.png?alt=media&#x26;token=5ceee8a9-dfef-41c2-b7ca-22cebb3314a4" alt=""><figcaption><p>They omitted the "..and fucks a lot of stuff up while doing that"<br>(Source: <a href="https://github.com/maxwastakenyt/jmdash">JM-'s GitHub repository</a>)</p></figcaption></figure>

### The Incest Rule

The Incest Rule is a principle of **JM-**'s Syntax that reads:

*"Every function has the ability of using and creating other functions inside of its body to achieve its goal."*&#x20;

So technically speaking you could `#def`ine an empty function and use it as\
C-like languages' `main()`.\
\&#xNAN;**\*Important sidenote**: This *kinda* issue has been addressed in the [PIDD](https://jmdash.gitbook.io/jmdash-docs/design-documents/the-post-idd).

<figure><img src="https://560939383-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFHN1z3VqR1ZzKSMrPQF7%2Fuploads%2FXWzibJ7AnLUAtMxpGcsf%2Fimage.png?alt=media&#x26;token=996cbde1-9db2-4d2d-b584-cb448dad8904" alt=""><figcaption><p>An example of The Incest Rule being applied to<br>create multiple nested or "incested" <code>con.out{}</code> functions</p></figcaption></figure>

### Important note

All of the informations regarding JM-'s Syntax that you will find in this documentation are based on the Initial Design Documents: [IDD](https://jmdash.gitbook.io/jmdash-docs/design-documents/initdesidocu), [IDoLD](https://jmdash.gitbook.io/jmdash-docs/design-documents/initial-design-of-libraries-document), [IDoEHD](https://jmdash.gitbook.io/jmdash-docs/design-documents/initial-design-of-error-handling-document) and every other [Design Document](https://jmdash.gitbook.io/jmdash-docs/design-documents) like the [PIDD](https://jmdash.gitbook.io/jmdash-docs/design-documents/the-post-idd) and their [revis](https://jmdash.gitbook.io/jmdash-docs/design-documents/the-pidds-first-revision)[ions](https://jmdash.gitbook.io/jmdash-docs/design-documents/the-pidds-second-revision)
