Skip to main content

SaLangDev - A tiny educational programming language (digit, one_letter, letters, outcome)

Project description

🌀 SaLangDev — The Simple Abstract Language for Developers

Version: 1.0.0 Author: Salman Fareed Chishty License: MIT Extension: .salangdev


📖 Introduction

SaLangDev (Simple Abstract Language for Developers) is a lightweight and beginner-friendly programming language designed to show how interpreters and languages work internally.

Built entirely in Python, SaLangDev lets you write small programs using human-friendly commands instead of traditional syntax.

The purpose of SaLangDev is education, experimentation, and inspiration — a great tool for learning the basics of language design and execution.


✨ Features

Custom Syntax: Write programs using commands like digit, letters, and outcome. ✅ Python-Powered Execution: SaLangDev converts your code into Python and runs it instantly. ✅ No Dependencies: 100% pure Python — just install and run. ✅ .salangdev File Support: Run your own .salangdev scripts directly from the terminal. ✅ Extensible: Add new keywords or grammar rules easily.


🧠 SaLangDev Syntax

SaLangDev Keyword Meaning / Python Equivalent
digit int (integer values)
one_letter char (single character)
letters str (string type)
outcome print() function
+ - * / Same as Python operators
= Assignment operator
# Comment indicator

💡 Example Program

# SaLangDev Example
digit x = 10
letters name = "Salman"

outcome("Welcome to SaLangDev!")
outcome(name)
outcome(x + 5)

Output:

Welcome to SaLangDev!
Salman
15

⚙️ Installation

You can install SaLangDev directly from PyPI using:

pip install salangdev

▶️ Usage

Create a new file:

nano test.salangdev

Write:

outcome("Hello from SaLangDev!")

Then run it:

salangdev test.salangdev

Output:

Hello from SaLangDev!

🧩 Supported Data Types

Type Keyword Description Example
digit Integer values digit age = 25
letters Strings or text letters msg = "Hi there!"
one_letter Single character one_letter grade = 'A'

🔍 Internal Working

When you execute a .salangdev file, the interpreter:

  1. Reads the file line by line.
  2. Replaces SaLangDev keywords with their Python equivalents.
  3. Runs the translated Python code.

For example:

digit x = 5
outcome(x)

Internally becomes:

x = int(5)
print(x)

🧑‍💻 Development & Contribution

Contributions are welcome! You can:

  • Add new keywords like repeat, loop, or if
  • Improve parsing logic
  • Add error handling and debugging
  • Extend the runtime

To contribute:

git clone https://github.com/<yourusername>/salangdev
cd salangdev
pip install -e .

Then test:

salangdev examples/hello.salangdev

🧰 Future Roadmap

🚧 Planned Features:

  • Control structures (if, loop)
  • String concatenation and interpolation
  • File I/O support
  • Error tracking and debugging mode
  • Graphical editor for SaLangDev programs

📜 License

MIT License
Copyright (c) 2025 Salman Fareed

You are free to use, modify, and distribute SaLangDev with proper attribution.


❤️ Credits

Developed by Salman Fareed Chishty 📍 Lahore Garrison University (LGU) 🎯 Inspired by curiosity and passion for software construction.


🌐 Links

🔗 PyPI: https://pypi.org/project/salangdev 🔗 GitHub: (Add your GitHub repo link here) 🔗 Author: Salman Fareed Chishty

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

salangdev-1.0.3.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

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

salangdev-1.0.3-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file salangdev-1.0.3.tar.gz.

File metadata

  • Download URL: salangdev-1.0.3.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for salangdev-1.0.3.tar.gz
Algorithm Hash digest
SHA256 b91408132217323547abca7f1b802940c9825859b01523a46bf05b5ff469792d
MD5 1d98610c3c68cfd24844fa2cea7e08bd
BLAKE2b-256 f3168e315a6e28a1e4e77a33bcf0b72399d1d2c4be9a8449fbafef802188ac82

See more details on using hashes here.

File details

Details for the file salangdev-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: salangdev-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for salangdev-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 867c76a45795cf2b9d8f05a92879f2cbc24f7d37e0547904f7016161b2e3070c
MD5 d1f6f42c42947fdeb90481bd9a710042
BLAKE2b-256 87187c82dcaf8577902095a86c369329365cd9680ff746ddcbb0e32b376e2d2b

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