DOOMS Programming Language
DOOMS is a custom, strict-typed, dynamically evaluated scripting language. It features a robust type-checker, custom functions, arrays, dictionaries, and more!
Roadmap & Status
Below is the current roadmap. We are currently finishing Phase 8!
- Phase 1: Basic interpreter pipeline (Lexer, Parser, AST, Interpreter) and
print - Phase 2: Explicitly Typed Variables (
int,str,boo,any) - Phase 3: Arithmetic (
+,-,*,/) - Phase 4: Conditionals (
if/else) - Phase 5: Block Scoping (
{...}) and Loops (while,<,>,==) - Phase 6: Custom Functions
- Phase 7: Arrays / Lists
- Phase 8: Dictionaries, String Methods, and
input() - Phase 9: Modules System (
import) - Phase 10: Classes (OOP)
- Phase 11: Bytecode Compilation (Virtual Machine)
Features Overview
- Explicit Typing (
int,str,boo,any) - Arithmetic operators (
+,-,*,/) - Comparison operators (
<,>,==) - Loops (
while) - Custom Functions with explicit typing (
func add(int a) { return a + 1; }) - Arrays (
[1, 2]), Tuple Types ([int, str]), and Array Methods (.push(),.pop()) - Dictionaries (
{}) with methods (.get(),.keys()) and index access (obj["key"]) - String Operations (
.length(),.upper(),.split()) - Built-in
print()andinput()with automatic type coercion - Modules System (
import "file.dooms"andimport "file.dooms" as name) - Classes (OOP) with
classandthisbinding
Installation
DOOMS is available on PyPI! You can install it globally using pip:
pip install dooms
Running DOOMS
Once installed, you can use the dooms command anywhere in your terminal:
dooms run examples/hello.dooms
Metadata
Release files for dooms 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| dooms-1.0.0.tar.gz | 15.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dooms-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.8 kB
Release files / dooms-1.0.0.tar.gz
| Download URL | dooms-1.0.0.tar.gz |
|---|---|
| Size | 15.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fef5dca16577e63e57f5386d5fa2913015ec2a2d461fe98fbeb7119eca2762ce
|
|
BLAKE2b-256 checksum How to use checksums |
e797ece0b78c10aca73e51c0c128afdcd299119579d12ba3bcb5de91e6165a79
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / dooms-1.0.0-py3-none-any.whl
| Download URL | dooms-1.0.0-py3-none-any.whl |
|---|---|
| Size | 16.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
eb04f24d5aaaf071bad504fae4b64dfa74b51a6fe76d719dc3e61f02e08c81f2
|
|
BLAKE2b-256 checksum How to use checksums |
c4a45206055165e7eac71cc0e75e91cbcfa9bb569adefb1e9292772d63275f79
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Security for dooms 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.