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

question-closed Jak powstały języki programistyczne ? I jak stworzyć taki język.

Object Storage Arubacloud
0 głosów
186 wizyt
pytanie zadane 13 kwietnia w Systemy operacyjne, programy przez Infos Użytkownik (650 p.)
zamknięte 13 kwietnia przez Infos
Witam,bo mam takie ogólne pytanie jak powstały języki programowania bo to dość ciekawe pytanie chodzi mi o to że jak zostały stworzone.a także jak takowy język stworzyć chciałbym się tego dowiedzieć
komentarz zamknięcia: Już znalazłem odp na te dwa tematy
1
komentarz 13 kwietnia przez reaktywny Nałogowiec (41,090 p.)
A stworzyłeś coś w międzyczasie??
komentarz 13 kwietnia przez Infos Użytkownik (650 p.)
Nie bo nic w tym temacie nie umiem ..
komentarz 13 kwietnia przez sensor Użytkownik (680 p.)
bo żeby stworzyć własny język nie tylko wystarczy umieć programować
komentarz 13 kwietnia przez Infos Użytkownik (650 p.)
Aa co jeszcze bo to co napisałeś to wiem ale czego dokładnie to nie ?
komentarz 13 kwietnia przez sensor Użytkownik (680 p.)
elektoronika, a na koniec mieć jeszcze wyobraźnie jak to zrobić
komentarz 13 kwietnia przez Infos Użytkownik (650 p.)
Ta ok
komentarz 14 kwietnia przez sensor Użytkownik (680 p.)
a tak to assembler, compiler, interpreter, wyżej to już masz więcej
komentarz 14 kwietnia przez Wiciorny Ekspert (270,970 p.)

@sensor, elektronika, żeby stworzyć własny język? Skąd to wymysliłes, nie? Widać, że nawet nigdy tego nie robiłeś :D Nonsens. Spokojnie możesz stworzyć swój język tylko programistycznie i jest wiele takich języków np. BrainFuck..., :) 
Ja tam bawiłem się w proste tworzenie języków, nie potrafię nic z elektroniki. 

Kompilator możesz programistycznie zaprogramować, zresztą to się robi nawet podczas programowania :), tak samo wszystkie rodzaje collectorów pamięci, algorytmów, procesów uruchamiania, procesów składni i jej weryfikacji, aż po prosty class loader i zarządzaniem procesami i wątkami. 

Znajomość auotmatów sie przyda, ale to jest dziedzina programistyczna, aby wiedzieć czym jest determinizm/nie determinizm, tak naprawdę tworzenie formatów językowych to pokrywa się z teorią automatów. http://fizyka.umk.pl/~milosz/JiA/SkrJiA20.pdf 

komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
Ok miło mi to słyszeć
komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
Ale mam takie pytanie do tego czy interpreter pisze się tak samo w każdym języku ?
komentarz 14 kwietnia przez Wiciorny Ekspert (270,970 p.)
Teoretycznie napisać w większości języków programowania. to zależy od wydajności  dostępności bibliotek do parsowania kodu, elastyczność i jeszcze dochodzą inne kwestie związane z konkretnymi wymaganiami projektu.

Zasadniczo, o ile dany język programowania oferuje odpowiednie narzędzia i biblioteki do obsługi operacji na tekście oraz manipulacji kodem źródłowym, to jest możliwe stworzenie interpretera w tym języku.

Np. Python, JavaScript czy Ruby, oferują wygodne operacje na stringach i obsługę struktur danych co znacznie upraszcza proces tworzenia
komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
A tak w ogóle jak to się robi to robi się np w Java script tak jak jakąms stronę ?
komentarz 14 kwietnia przez Wiciorny Ekspert (270,970 p.)
Nie całkowicie nie. Strony w JavaScript też samej nie zrobisz, tworzenie skomplikowanych rzeczy, wymaga wielu narzędzi i wielu rzeczy jednocześnie: dla stron to od poziomu UI, przez serwery, infrastrukturę serwisową etc,

Musisz wymyśleć własną składnie i tworzysz kod w taki sposób jak tworzone są biblioteki.
https://geek.justjoin.it/stworzyc-wlasny-jezyk-programowania-poznaj-krzysztofa-wende-elchemy/#Od_czego_zaczales_tworzenie_wlasnego_jezyka

Skup się najpierw na nauce programowania ,bo widzę, że próbujesz łapać się rzeczy, których jeszcze nie rozumiesz, a na tworzenie takich języków potrzebowałbyś spokojnie kilku lat, jak nie wielu najpierw na umiejętne używanie języków programowania, potem najtrudniejsze "wymyślec" składnie.

Tworząc włąsny język programowania, nie piszesz "go w innym języku programowania", sam musisz wymyśleć składnie.
komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
ta chodzi mi gdzie te składnię wymyśleć i napisac a na razie chciałbym się tylko dowiedzieć jak zrobić takie podstawy
komentarz 14 kwietnia przez Wiciorny Ekspert (270,970 p.)
Nie ma "gdzie", chyba, że mówimy o czymś "co naśladuje zachowanie języka", taka zabawa w pseudo budowanie to wtedy możesz pisać w jakimś jężyku, natomiast tak to sam to musisz wymyśleć i w tym jest problem i sztuka. To ty wymyślasz składnie i jej zachowanie
https://ruslandzhafarov.medium.com/how-to-create-your-own-programming-language-introduction-7c848585c59

Compilator też sam musisz zbudować, zeby wiedział jak przetwarzać twój kod np. na inny kod.

Bez angielskiego nie przejdzie.
komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
No tak ale nie rozumiem gdzie to mam napisać compliator ,interprator ? Bo za bardzo nie rozumiem w jakim pliku to napisać
komentarz 14 kwietnia przez adrian17 Ekspert (345,240 p.)

W dowolnym wybranym przez siebie języku. Jak znasz JSa to losowy przykład który napisałem na kolanie:

function execute(code) {
	const variables = {};
	for (const line of code.split("\n")) {
		if (line.includes(" = ")) {
			const [name, value] = line.split(" = ");
			variables[name] = value;
		} else if (line.startsWith("print ")) {
			console.log(variables[line.substr(6)])
		}
	}
}

var code = `
a = 5
c = 7
print c
print a
`;
execute(code);

i już mam super prosty "język" interpretowany; stąd mogę go rozszerzać w sposób jaki sobie zachcę, idealnie z użyciem standardowych technik jak lexer, parser, AST etc - ale można też na upartego bez tego.

komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
No to oto mi chodziło z tym js
komentarz 14 kwietnia przez Infos Użytkownik (650 p.)

@adrian17, ale dodatkowe pytanie jeżeli tu mamy war a w rb weh czy coś podobnego to w interpratorze w danym języku zmiana var w czymś innym to coś innego ci zastępujemy zależnie od języka i kolejne.jezeli chciałbym stworzyć własny język ale nie korzystając z już istniejącego języka jak to zrobić taki całkowicie bez korzystania z innego języka 

komentarz 14 kwietnia przez adrian17 Ekspert (345,240 p.)

Nie rozumiem o co pytasz, szczególnie nie wiem co tutaj napisałeś

war a w rb weh

jezeli chciałbym stworzyć własny język ale nie korzystając z już istniejącego języka

Nie możesz, no... przecież _jakoś_ musisz napisać program który zinterpretuje lub skompiluje Twój język, dosłownie jedyna opcja która nie zawiera jakiegoś istniejącego ludzkiego zapisu tekstowego to ręcznie zapisywać kolejne bajty programu dla procesora czego nie robi się od kilkudziesięciu lat.

komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
Ach czekaj no to jak powstał pierwszy język programowania?????
komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
Aa ok ale może być kiedyś chciał ale na razie muszę się czymś posłużyć
komentarz 14 kwietnia przez adrian17 Ekspert (345,240 p.)

Ach czekaj no to jak powstał pierwszy język programowania?????

No, kompilator był zapisany tak jak mówiłem

ręcznie zapisywać kolejne bajty programu dla procesora

To był stopniowy proces od kompletnie-ręcznego programowania komputera, po kolejne usprawnienia ułatwiające pisanie - a wtedy kod nie był "pisany" na komputerze, tylko podawany na setkach-tysiącach specjalnych kart. No mogłeś dać swój program do skompilowania i dowiedzieć się czy w ogóle się udało np dopiero następnego dnia.

https://en.wikipedia.org/wiki/Fortran
https://en.wikipedia.org/wiki/Computer_programming_in_the_punched_card_era

etc

komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
Rozumiem
komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
Czyli nie da sie zrobić czystego języka programowania szkoda ale ok a takie pytanie czy np Java script też został napisany w innym języku?
komentarz 14 kwietnia przez sensor Użytkownik (680 p.)

@Wiciorny, ok sorry

komentarz 14 kwietnia przez adrian17 Ekspert (345,240 p.)

czy np Java script też został napisany w innym języku

No... tak. I to nie jest "jeden javascript", tylko każdy silnik przeglądarki ma swój własny interpreter/kompilator JSa, wszystkie trzy wiodące napisane w C++ie.

komentarz 14 kwietnia przez Infos Użytkownik (650 p.)
Okej

Podobne pytania

–1 głos
1 odpowiedź 161 wizyt
pytanie zadane 18 kwietnia w Inne języki przez Mist Użytkownik (900 p.)
0 głosów
1 odpowiedź 1,298 wizyt
pytanie zadane 20 września 2015 w SQL, bazy danych przez Akasemis Nowicjusz (140 p.)
0 głosów
1 odpowiedź 132 wizyt

92,639 zapytań

141,515 odpowiedzi

319,905 komentarzy

62,018 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!

...