# Erlang

To use this language, use the class "language-erlang".

## Comments

    % This is a comment
    %% coding: utf-8

## Strings

    "foo \"bar\" baz"

## Numbers

    42.
    $A.
    $\n.
    2#101.
    16#1f.
    2.3.
    2.3e3.
    2.3e-3.

## Functions

    P = spawn(m, loop, []).
    io:format("I am ~p~n", [self()]).
    'weird function'().

## Variables

    P = {adam,24,{july,29}}.
    M1 = #{name=>adam,age=>24,date=>{july,29}}.
    M2 = maps:update(age,25,M1).
    io:format("{~p,~p}: ~p~n", [?MODULE,?LINE,X]).

## Operators

    1==1.0.
    1=:=1.0.
    1 > a.
    +1.
    -1.
    1+1.
    4/2.
    5 div 2.
    5 rem 2.
    2#10 band 2#01.
    2#10 bor 2#01.
    a + 10.
    1 bsl (1 bsl 64).
    not true.
    true and false.
    true xor false.
    true or garbage.

## Known failures

There are certain edge cases where Prism will fail. There are always such cases in every regex-based syntax highlighter. However, Prism dares to be open and honest about them. If a failure is listed here, it doesn’t mean it will never be fixed. This is more of a “known bugs” list, just with a certain type of bug.

### Comment-like substrings

    "foo % bar";