Skip to main content

salangdev - A tiny educational programming language with simple syntax (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.0.tar.gz (6.3 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.0-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: salangdev-1.0.0.tar.gz
  • Upload date:
  • Size: 6.3 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.0.tar.gz
Algorithm Hash digest
SHA256 bcdb3ee28d8013ea84b859a68820588b244412df086e7b87b3221c4f2c1e1e02
MD5 873d72d2b539dfbb3f702183cea85b48
BLAKE2b-256 e1275c7643b7907bf8b2bd1ebc4bb1b0e3a543a3a08dc0efcab75a4d8f966f5e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: salangdev-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.6 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 16487237ace1c08e40d5046ab6f80716907b0ccfa482b9fbfec1ccac6cbad614
MD5 c6a94e37ce08b857a45daf2b6031e538
BLAKE2b-256 10246f19642244e27540488f56f8c3967b4c7eea2df8af295b545801f66071a3

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