Avocado język programowania
Witaj! 😄 Pracuję nad stworzeniem nowego języka programowania o nazwie „Avocado”, który rozwijam w środowisku Lazarus (Free Pascal). Język ten jest interpretowany, a obecnie umożliwia tworzenie aplikacji konsolowych.
Prace nad Avocado, w tym nad jego interpreteren i zintegrowanym środowiskiem programistycznym (IDE), rozpoczęły się 19 lutego 2025 roku. Cechą wyróżniającą ten język jest możliwość pisania komend w języku polskim również można kompilować kod w .exe
Inspiruję się różnorodnymi językami programowania, takimi jak Python, Java, C#, Pascal oraz Lazarus, jednocześnie wdrażając własne, unikalne rozwiązania.

Pokażę, co Avocado potrafi na dzień dzisiejszy. Na początek wydrukujemy „Hello World” za pomocą komendy Druk().
Druk('Hello World')
Deklarowanie zmiennych liczbowych i zmiennoprzecinkowych można zrealizować za pomocą jednej komendy.
Liczba age = 18
Druk(age) Wynik: 18
Liczba procent = 3.5
Druk(procent) Wynik: 3.5
Dostępna podstawowa matematyka +, -, / *
Liczba a = 5
Liczba b = 10
Liczba suma = a+b
Druk(suma)
suma = a - b
Druk(suma)
suma = a * b
Druk(suma)
suma = a / b
Druk(suma)

age = 18
print("wiek:", age) # wynik: wiek: 18
W Lazarus (Free Pascal):
program Project1;
uses
SysUtils;
var
Age: Integer;
begin
Age := 18;
WriteLn('Wiek: ' + IntToStr(Age));
end.
W Avocado:
Liczba age = 18
druk('Wiek: ' + age)
Wynik: Wiek 18

Deklaracja zmiennej typu String w Avocado to Tekst nazwazmiennej = 'Wartość'.
W porównaniu do Pythona:
name = "Tom"
print(name)
W Avocado:
Tekst name = 'Tom'
druk(name)
W Lazarus:
var
Name: String;
begin
Name := 'Tom';
WriteLn(Name);
end;

Zmienne zmiennoprzecinkowe można deklarować po prostu używając Liczba np. Liczba procent = 5.5.
Deklaracji zmiennej logicznej typu Boolean
Logika twojazmiennalogizna = true
Druk(twojazmiennalogizna) Wynik true
Drukowanie tekstu
Drukowanie tekstu, wartości liczbowej czy tekstowej odbywa się za pomocą funkcji Druk. Przykłady:
Druk('Witaj Świecie!')
Druk(twojazmienna)
Druk(age + ' lat') // wynik: 18 lat
Konwersja tekstu na liczbę: TekstWLiczbe(imie). Konwersja liczby na tekst: LiczbaWTekst.
Konwersja Tekst w Liczbę
Tekst age = '20'
age2 = TekstWLiczbe(age)
druk(age)
Liczba suma = age2 + 5
druk(suma) // wynik: 25
Konwersja Liczby w Tekst
Liczba age = 20
Tekst age2 = LiczbaWTekst(age)
Tekst b = '100'
druk(age)
Tekst suma = (age + b)
druk('Wynik: ' + suma)

Wprowadzanie danych przez użytkownika funkcja wpr() jak w python name = input(„Your name: „) działa na razie tylko w konsoli
Tekst name = ”
name = wpr(’Twoje imie’)
//Wpisujesz swoje imię w konsoli
Tekst surname = ”
surname = wpr(’Twoje nazwisko’)
//Wpisujesz swoje nazwisko w konsoli
Tekst wynik = (name + surname) //konkatenacja stringów
//Wynik w konsoli TwojeImie TwojeNazwisko

Dodałem kompilowanie kodu
Kod z Avocado przekłada się na Free Pascal a dalej jest kompilowany przez kompilator FPC.

W ustawieniach należy wskazać ścieżkę do kompilatora fpc, pobrać można z oficjalnej strony Lazarus

