Wyrażenia
A więc rozpocząłem tworzenie programów pod zlecenia w sensie żeby wykonywać zlecenia. Stworzę jeden program który będzie wykonywał właśnie te wszystkie zadania. To jest moje założenie. No i interpreter jest tutaj niezbędny. Tworzę własny język interpretowany. W przyszłości to właśnie w nim będę wykonywał wszystkie zadania. Jest on dużo prostszy od Scali i można w nim faktycznie wykonać wiele różnych zadań. Właściwie można w nim zrobić wszystko. Na tą chwilę jednak potrzebna mi jest interpretacja wyrażeń algebraicznych. A jak to ogarnę to już sam język też ogarnę. No tak to po prostu wygląda.
Czyli mamy wyrażenie algebraiczne: a + b = c. Ja widzę, że to jest jakieś działanie, wyrażenie. No ale zapiszę to sobie w programie jako ciąg znaków no to program odczyta to jako zwykły ciąg znaków i nic innego. A powinien zrobić tak, że odczytuje każdą wartość osobno. Czyli jest w stanie odczytać ten ciąg znaków i rozpoznać czy to jest wyrażenie algebraiczne czy też nie. W każdym razie ja to na początku uproszczę tak, czyli podaję same wyrażenia algebraiczne. Czyli np. napiszę 2 + 3 to program ma mi wyświetlić wynik tego działania czyli 5. Działanie podaję jako ciąg znaków. No to interpreter może odczytywać wszystkie indeksy znaków algebraicznych czyli dodawania, odejmowania, itd. oraz liczb tak. Jak są jakieś zmienne to od razu zamienia je na liczby. Jednym słowem dla interpretera takie wyrażenia czy języki to są wszystko liczby, a nie znaki tak naprawdę. Zmienne to tylko uproszczenie tego wszystkiego.
I tak właśnie ma interpreter działać. Jak ktoś chce do Javy to znalazłem możliwość uruchomienia skryptów z poziomu samego języka. Klasa nosi nazwę ScriptEngineManager. Ja jednak korzystam z własnego rozwiązania. Warto tworzyć swoje rozwiązania, ponieważ one nas całkiem fajnie rozwijają. No i mogą być po prostu dużo lepsze niż te które są obecnie.