Skip to main content

A programming language with a funny name

Project description

La La Lang Logo


Python version Project version Pypi status Lambda status Client status Coverage Status License

A programming language with a silly name

I saw recently the amazing movie La La Land and inspired by only the movie's name and my learning obsession I decided to learn how to make a programming language and give it a funny name 🙂.

Warning: This shouldn't be used in any production enviroment, it is very slow and poorly designed, it was made with educational purposes only.

Installation

The only requirement is to have Python 3.9+ (you can install it directly or with pyenv).

You can install with pip:

$ pip install lalalang

Or by source

$ git clone https://github.com/manoloesparta/lalalang && cd alalang
$ make setup env=python # Here goes the path of your python 3.9 executable
$ make install

Info: If the terminal returns command not found: 3lang you should see where pip is installing your package and add that directory to PATH, sometimes using sudo with pip solves it, or adding the --user flag, if none of these options works can still use the interpreter with the command python -m lalalang.

Usage

You can see the main options with this command

$ 3lang --help

Usage: 3lang [OPTIONS]

Options:
  --mode TEXT  REPL mode (lex|parse|eval)
  --src TEXT   Input file with 3lang code
  --help       Show this message and exit.

To enter the interpreter and run code on the fly, type

$ 3lang

Welcome to the city of stars!🌟
This is the La La Lang Programming Languag v1.2!
♪♪ > 

To read a file and execute it, type

$ 3lang --src random_program.3la

You can enter other in the stages of lexing and parsing of the interpreter with the --mode flag.

Syntax

You can see the syntax of lalalang here.

See the examples directory to get a wider idea.

License

This project is under the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lalalang-1.2.13.tar.gz (37.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lalalang-1.2.13-py3-none-any.whl (24.9 kB view details)

Uploaded Python 3

File details

Details for the file lalalang-1.2.13.tar.gz.

File metadata

  • Download URL: lalalang-1.2.13.tar.gz
  • Upload date:
  • Size: 37.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.7

File hashes

Hashes for lalalang-1.2.13.tar.gz
Algorithm Hash digest
SHA256 048ebf0cb3df3fe7f9ac94637034c188df0e1b69a4786cba76e46960c918236e
MD5 77b6a3dff7ba04e3d6e95ab845079d93
BLAKE2b-256 9c36403d960e2fb58b89e1abc4a425d33754b53c04479f29b7bba4872b284985

See more details on using hashes here.

File details

Details for the file lalalang-1.2.13-py3-none-any.whl.

File metadata

  • Download URL: lalalang-1.2.13-py3-none-any.whl
  • Upload date:
  • Size: 24.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.7

File hashes

Hashes for lalalang-1.2.13-py3-none-any.whl
Algorithm Hash digest
SHA256 72bc20125350c759c4b325f46fb7db2c63d4c1f0b90963768cd40402c70ea11c
MD5 45b0e813c63f1c91c538c12fe22b18c9
BLAKE2b-256 d4c9b18b9470deab7ca14e8f7710dc077b39906373bc06e359276d624b4a499a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page