https://github.com/hackeros-linux-system/hacker-lang
A simple programming language. The Hacker Lang programming language is a scripting language.
https://github.com/hackeros-linux-system/hacker-lang
hacker-files hacker-lang hackeros hackeros-debian javascript javascript-library python python-rich python-syntax python3 rust rust-compiler rust-lang
Last synced: about 1 month ago
JSON representation
A simple programming language. The Hacker Lang programming language is a scripting language.
- Host: GitHub
- URL: https://github.com/hackeros-linux-system/hacker-lang
- Owner: HackerOS-Linux-System
- License: mit
- Created: 2025-10-21T12:07:37.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-11-02T19:22:02.000Z (3 months ago)
- Last Synced: 2025-11-02T21:13:15.931Z (3 months ago)
- Topics: hacker-files, hacker-lang, hackeros, hackeros-debian, javascript, javascript-library, python, python-rich, python-syntax, python3, rust, rust-compiler, rust-lang
- Language: Python
- Homepage: https://hackeros-linux-system.github.io/HackerOS-Website/Home-page.html
- Size: 94.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.adoc
- License: LICENSE
Awesome Lists containing this project
README
= Hacker Lang
:doctype: book
:icons: font
:toc: left
:toclevels: 2
:author: HackerOS Team
:revnumber: 0.0.2
:revdate: 2025-10-28
== Opis
**Hacker Lang** to lekki i wygodny język skryptowy stworzony dla *HackerOS*, zaprojektowany jako bezpośrednia alternatywa dla tradycyjnych skryptów `.sh` — zamiast skryptów shellowych używasz binarek skompilowanych z kodu `.hacker`.
Hacker Lang korzysta z systemu pakietów i bibliotek hostowanych w repozytorium **bytes.io**.
== Dlaczego Hacker Lang?
* Zastępuje złożone skrypty `.sh` prostymi, czytelnymi plikami `.hacker`.
* Umożliwia kompilację do binarek, co przyśpiesza uruchamianie oraz ułatwia dystrybucję.
* Integruje się z repozytorium bibliotek *bytes.io* — instalacja i aktualizacja bibliotek odbywa się przez `hackerc`.
* Zaprojektowany do użytku wewnętrznego w ekosystemie HackerOS, ale nadaje się też do zastosowań zewnętrznych.
== Szybkie rozpoczęcie
=== Wymagania
* Dystrybucja HackerOS.
* `hackerc` - wszystkie możliwości kompilatora hacker lang w tym narzędziu
* `hl` — narzedzie cli do uruchamaia i kompilacji samych plików .hacker (służy do drobnych skryptów, programów, projektów).
* `hli` — skrót od hacker lang interface narzędzie do interaktywnych komend działa tak samo jak hlp.
* `hlp` — skrót od hacker lang projects narzędzie glównie opiera się na plikach Project.hacker lub Project.hfx/Project.toml
* `bytes` — narzędzie do instalacji bibliotek, pluginów dla hacker lang.
* `hlh` — skrót od hacker lang help - narzedzie pokazuje szczegółowe informacje o narzędziach hackerc, bytes, hli.
== Komendy dla narzedzi hacker lang
Poniżej lista podstawowych komend dostępnych w narzędziu `hackerc`:
* `hackerc run {plik.hacker}` Uruchamia plik `.hacker` bez kompilacji.
* `hackerc compile {plik.hacker}` Kompiluje plik `.hacker` do binarki.
* `hackerc check {plik.hacker}` Szuka błedów w `.hacker`.
* `hackerc repl` Uruchamia interaktywny REPL Hacker Lang.
* `hackerc version` Wyświetla wersję `hackerc`.
* `hli run` Uruchamia bytes.yaml.
* `hli compile` Kompiluje kod na podstawie bytes.yaml.
* `hli check` Sprawdza poprawność kodu na podstawie bytes.yaml.
* `hli init` Tworzy przykładowy projekt z `bytes.yaml`, `.hacker` w bieżącym katalogu.
* `hli clean` Czyści cache oraz pliki tymczasowe.
* `hli version` Wyświetla wersję `hli`.
* `hlh` Wyświetla informacje o wszystkich narzędziach cli od hacker lang.
* `bytes install` Instaluje wybrana biblioteke.
* `bytes remove` Usuwa wybrana biblioteke wybrana biblioteke.
* `bytes search` Szuka wybranej biblioteki.
* `hlh` Informacje o narzędziach hli, hackerc, bytes.
== Składnia i przykład prostego skryptu `.hacker`
Poniżej przykład prostego pliku `.hacker`.
[source,hacker]
----
// sudo
// apt
> sudo apt update
----
= Składnia Hacker Lang
|===
| Prefiks | Znaczenie | Przykład
| `!`
| **Komentarz** (cała linia jest ignorowana)
| `! To jest komentarz`
| `//`
| **Zależność systemowa** (pakiet z `apt`)
| `// curl` → `sudo apt install curl`
| `#`
| **Biblioteka (lib)** – biblioteka z repozytorium bytes.io (zainstaluj ją za pomocą bytes install). Możesz również używać bibliotek z innych języków programowania
| `# obsidian, # bytes:obsidian, # rust:serde, # python:rich`
| `@`
| **Zmienna środowiskowa**
| `@USER=admin`
| `>`
| **Komenda do wykonania**
| `> echo "Hello"`
| `>>`
| **Komenda do wykonania + funkcje**
| `>> echo "Hello"`
| `>>>`
| **Każda komenda jest wykonywana osobno**
| `>>> echo "Hello"`
| `=`
| **Pętla** (`liczba > komenda`)
| `=3 > echo "Hi"` → 3 razy
| `?`
| **Warunek** (`warunek > komenda`)
| `? [ -f file ] > echo OK`
| `&`
| **Uruchom w tle**
| `& sleep 10`
| `[`
| **Początek sekcji konfiguracyjnej**
| `[`
| `]`
| **Koniec sekcji konfiguracyjnej**
| `]`
| `\\`
| **Plugin** (pluginy przechowywane w `~/.hackeros/hacker-lang/plugins/`, mogą być binarkami)
| `\\ moj-plugin`
| `$`
| **Zmienna lokalna**
| `$TEMP=tmp_value`
| `:`
| **Funkcja/blok** (początek definicji funkcji `:nazwa`, koniec `:` , wywołanie `.nazwa`)
| `:moja_funkcja` ... `:`
| `!!`
| **Komentarz blokowy** (otwarcie i zamknięcie)
| `!!` ... `!!`
| `^`
| **Tryb superuser** (dodaj `sudo` do komendy)
| `^ > rm file` → `sudo rm file`
|===
== Integracja z bytes.io
Hacker Lang używa repozytorium bibliotek *bytes.io*. Użyj `bytes install ` aby pobrać paczkę; `bytes update` aby ją zaktualizować. Jeżeli nie masz zainstalowanego narzędzia cli bytes użyj komendy hackerc unpack bytes.
== FAQ (krótkie)
* Jak debugować? Użyj `hackerc check` oraz `hackerc run` z dodatkowymi flagami debug (jeśli dostępne). Logi `hackerc` znajdują się w domyślnym katalogu cache.
* Czy `.hacker` może wywoływać polecenia systemowe? Tak — użyj `>` aby wykonać komendę shellową.
* Gdzie znaleźć dokumentację? Pełna dokumentacja i wiki: link:https://github.com/HackerOS-Linux-System/Hacker-Lang/wiki[Wiki na GitHubie].
* Gdzie znajde repozytorium bytes.io ? link:https://github.com/Bytes-Repository[Repozytorium bytes.io]
* Zgłoś błąd link:https://github.com/HackerOS-Linux-System/Hacker-Lang/issues[Issues na GitHubie]
== Licencja
Projekt jest dostępny na licencji MIT. Zobacz plik LICENSE w repozytorium.
== Kontakt
Masz pomysł albo błąd? Otwórz issue na GitHubie w repozytorium projektu. Kontakt na email: hackeros068@gmail.com