Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Własny język programowania.

Ostatnio zmodyfikowano 2010-02-15 16:01
Autor Wiadomość
Bartaz
Temat założony przez niniejszego użytkownika
Własny język programowania.
» 2010-02-13 14:36:13
Wiem troche dziwny temat,ale jak go zrobic?
P-13848
WunM
» 2010-02-13 14:59:53
To można zrobić na wiele różnych sposobów. Może to być język skryptowy interpretowany przez aplikację, lub taki który będzie tłumaczony do kodu pośredniego a następnie uruchamiany przez maszynę wirtualną. Może to być język kompilowany czyli tłumaczony do kodu maszynowego lub np. do C/C++. Możliwości jest wiele. Do tego trzeba napisać parser (nie nie! - skorzystać z gotowych narzędzi jak np. bison, yacc).

Tworzenie własnego języka jest uzasadnione wtedy gdy znasz lepsze rozwiązania które chcesz wdrożyć lub jeśli musisz zaliczyć przedmiot na studiach. Nowe języki (przynajmniej te z których ktoś korzysta) są tworzone przez doświadczonych programistów. Inaczej to strata czasu.

Po za tym tworzenie języka to nie kwestia tygodni czy miesięcy ale lat. (zaznaczyłem tworzenie bo stworzyć i rzucić można bardzo szybko). Przykład: np. Python powstał w 1990 a dopiero teraz zrobiło się o nim na tyle głośno, że coraz więcej osób jest nim zainteresowanych.

Innym wyjściem jest opracowanie standardu i liczenie, że komuś się na tyle spodoba iż napisze parser albo kompilator ;) Ale  to również nie jest takie proste, nad tym pracuje wiele osób i często nie jest to doskonałe.

Z góry odradzam jeśli nie masz doświadczenia.
P-13849
marek
polecam książkę
» 2010-02-15 15:53:44
WNT "Elemeny Systemów Komputerowych" WNT 2008 Noam Nisan, Shimon Schocken  Jak chcesz to rzuć okiem na www1.idc.ac.il/tecs/
Dla mnie to rewelka. Przy pomocy pewnej bardzo uproszczonej wersji języka VHDL (język do modelowania układów cyfrowych,  za darmo!) budujesz prawie z tranzystorów ( no ściślej z bramek Nand)działający komputer! Z Nandów bramki And, Or Not. Z bramek sumatory, multipleksery itd, z tych Jednostkę ALU, pamięci , jednoski sterujące a z tego komputer. Jest to oczywiście zamodelowane w komputerze ale działa.
Narazie ten komputer działa na poziomie języka maszynowego (zera i jedynki)

Sam przeszedłem przez część hardwarową. Tzn zbudowałem komputer wykonujący kilka linijek kodu maszynowego.

Teraz autor proponuje Ci zbudowanie assemblera. Dalej z assemblera język wyższego rzędu, system operacyjny itd.
Niestety dla tych etapów potrzebna jest wiedza programisty, a w tym jestem cienki. Dlatego uczę się C++.
Nie muszę dodawać że te języki programowania to oczywiście jakieś bardzo uproszczone wersje.



P-13913
Elaine
» 2010-02-15 16:01:21

Innymi słowy: lekki offtop...
P-13914
« 1 »
  Strona 1 z 1