# Lumos Language

[![npm version](https://img.shields.io/npm/v/lumos-language.svg)](https://www.npmjs.com/package/lumos-language)

<img src="https://cdn.glitch.global/a6e15949-0cae-4ce8-a653-5883a6d0adc5/Lumos.png?v=1748865997035" />

Lumos is a lightweight, beginner-friendly interpreted programming language designed for learning, experimentation, and scripting.

## Influences

Lumos is influenced by

- Python
- JavaScript
- BASIC
- ShellScript

## Available

- Variable Declaration:
  <ul>
    <li>
      
      let x = 5

    </li>
  </ul>
- Function Definition:
  <ul>
    <li>
      
      def greet(name) { let message = "Hello," + name }

    </li>
  </ul>
- Function Invocation:
  <ul>
    <li>
      
      greet("Bob")

    </li>
  </ul>
- Control Structures:
  <ul>
    <li>
      
      for i = 1 to 5 { let square = i * i }

    </li>
    <li>
      
      while (x < 10) { let x = x + 1 }

    </li>
    <li>
      
      3.times do |i| {i} end

    </li>
  </ul>
- Conditional branch:
  <ul>
    <li>
      
      if (x == 10) {  let status = "Done"  } else {  let status = "Not yet"  }

    </li>
    <li>
      
      if (x == 10) { let status = "Done" } elsif (x == 20) { let status = "Already" } else { let status = "Not yet" }

    </li>
  </ul>
- Break and Continue:
  <ul>
    <li>
      
      break

    </li>
    <li>
      
      continue

    </li>
  </ul>
- Launch from your terminal:
  <ol>
    <li>
      
      npm i lumos-language

    </li>
    <li>
      
      cd path/to/lumos-language

    </li>
    <li>
      
      node index.cjs

    </li>
  </ol>
- Compile on your terminal:
  <ol>
    <li>
      
      npm i lumos-language

    </li>
    <li>
      
      cd path/to/lumos-language

    </li>
    <li> 
    
      node index.cjs main.lumos
  
    </li>
  </ol>

## Caution

- Please write the code in a single line and don't execute it while writing.
- When installing Lumos Language, don't use

<code>npm install @uchida16104/lumos-language</code>

but instead use

```shellscript
npm i lumos-language
```

in the terminal.

## Change
- You can refer to [npm](https://www.npmjs.com/package/lumos-language) or [GitHub Releases](https://github.com/Uchida16104/Lumos-Language/releases).

## More Info
Get from <strong><a href="https://cdn.glitch.global/a6e15949-0cae-4ce8-a653-5883a6d0adc5/Lumos.pdf?v=1748869028196">pdf</a></strong>.

2025 © <a href="https://hirotoshiuchida.glitch.me">Hirotoshi Uchida</a>
