• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Programowanie, własny "język programowania" w Pythonie

Object Storage Arubacloud
+2 głosów
514 wizyt
pytanie zadane 2 stycznia 2021 w Python przez x_000 Obywatel (1,460 p.)

Hej, mam 14 lat i stworzyłem własny "język programowania"

Nie wykorzystuje tokenizacji (lexer itd) a poprostu wykonuje to co mu powiesz, jest on w takiej jakby wersji Alpha i nie ma w nim wiele rzeczy np. (for, dekrementacji itd)

Repozytorium git: https://github.com/maciej-debowski/GitLanguage

Dokumentacja (Uboga ale jest): https://git-docs.glitch.me/

Prosze o ocene i jakąś rade :D (nie żeby zrobić lexera itd)

Przykładowy kod:

var a = 4
var b = 8
void hello => print ' hello today date is ' , date , print ' time is: ' , time
if a != b : hello
void a_inc => print a , ++ a
while a < b : a_inc 

troche poplątane ale działa!

1 odpowiedź

+1 głos
odpowiedź 9 stycznia 2021 przez Benek Szeryf (91,010 p.)

Fajne jest to, że się starasz coś w tym wieku programować. Ale w zasadzie to tyle.

Prosze o ocene i jakąś rade :D

Kod jest napisany w Pythonie, ale w ogóle nie przypomina on stylu pythonowego. To co mi się najbardziej rzuca w oczy to:

  • złożona struktura wyrażeń warunkowych if-else
  • zbyt długie funkcje, które są konsekwencją drabinek if-else
  • mieszana konwencja nazewnictwa zmiennych
  • używanie zmiennych globalnych
  • program w przeważającej większości bazuje na pętlach i wyrażeniach warunkowych
  • zbyt złożone operacje logiczne w wyrażeniach warunkowych
  • range nie trzeba startować od 0, bo to wartość domyślna

To co chyba jest najważniejsze, to ten program tłumaczy Twoją własną składnie na składnie Pythona. Niestety nie wiem, jak się tworzy języki programowania, ale domyślam się, że nie poprzez proste przetłumaczenie:

printf("%s\n", *string);  -->  print("text")

Bazując na tym jak wygląda język assemblera domyślam się, że powinno się rozbić poszczególną składnie na sekwencje poleceń i ją wykonać krok po kroku lub za pomocą drzewa.

Podobne pytania

+1 głos
2 odpowiedzi 787 wizyt
pytanie zadane 1 sierpnia 2019 w Python przez Bartek952 Użytkownik (900 p.)
0 głosów
1 odpowiedź 567 wizyt
pytanie zadane 20 czerwca 2020 w Rozwój zawodowy, nauka, praca przez Greeenone Pasjonat (16,100 p.)
0 głosów
3 odpowiedzi 2,893 wizyt

92,568 zapytań

141,421 odpowiedzi

319,629 komentarzy

61,956 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...