« 1 2 »
Autor Zpráva
dominicek
Profil
Zdravím chtěl bych se zeptat jak se dá vytvořit vlastní programovací jazyk. Co je k tomu potřeba, včem a jak ho vytvořit.
Díky za rady.
juriad
Profil
Na některé otázky je nejlepší odpověď, že pokud to sám nedokážeš vymyslet, tak se nemá cenu tím zabývat.

Ve stručnosti; definuješ syntax jazyka, pak každému konstruktu přiřadíš sémantiku, následně naprogramuješ překladač do existujícího jazyka (ať už je to vysokoúrovňový jazyk nebo strojový kód).
noko
Profil
Potřebuješ k tomu:
1. hlavu
2. perfektní znalost programování v alespoň dvou programovacích jazycích
3. nemyslet si že HTML je programovací jazyk
4. vědět jak vznikly jiné programovací jazyky
... a spoustu dalších věcí

Ale spoustu programátorů a koderů si vytváří něco jako svůj framework pro již existující programovací jazyk.
Nebo si "upravují" již existující jazyk, já třeba pracuju na MHTML (Moravské HTML)

Promiň, ale myslím že to nedáš.
dominicek
Profil
spíš by mi pomohlo kdyby jsi mi poradil jak vytvořit program do kterého něco zadám a on to vykoná...Resp. zadám do něj např. "tělo" a on mi to přeloží do "body".


chtěl bych si vytvořit něco jako HTML jazyk do kterého bych nemusel tagy zadávat v angl. ale v českém jazyce.
noko
Profil
tagy se dají dělat pomocí css, třeba:
<style>
podtrhnute {text-decoration: underline}
</style>
<podtrhnute>podtrhnutý text</podtrhnute>
Živá ukázka
dominicek
Profil
noko:
tagy se dělají pomocí css, třeba:
asi jsi nerozuměl mému požadavku
noko
Profil
Ano, pomocí výše uvedeného kódu si můžeš vytvořit (částečně) vlastní HTML
dominicek
Profil
Spíš bych chtěl vytvořit nějaký program v podobě exe nebo tak něco!
noko
Profil
Si ho vytvoř.
dominicek
Profil
ja vím ale HTML má tagy psané v angl- jazyce a ja bych chtěl vytvořit nějaký překladač do kterého bych psal to samé ale ne v AJ ale v ČJ. A ten program by mi to následně přeložil do AJ.


noko:
Si ho vytvoř.
Kdybych věděl jak, tak se tady neptám :-D
noko
Profil
dominicek:
Kdybych věděl jak, tak se tady neptám :-D
V Javě :-D
dominicek
Profil
a není něco jednodušího?...
noko
Profil
Práce a zakázky
dominicek
Profil
A nechceš mi spíše poradit jak vytvořit program do kterého zadám nějaký příkaz a on ho vykoná?...
noko
Profil
1. nauč se třeba Javu www.itnetwork.cz/java
2. napiš program


Jak prosté!
dominicek
Profil
tak asi to nemá cenu se s tebou bavit kdyz nechápeš co chci....Nechci vytvářet programovací jazyk ale jen program který udělá to co chci, tak na co by mi byla java?
noko
Profil
Na to aby si v NÍ napsal ten program :-)
dominicek
Profil
Dobře asi máš pravdu a jinak to nejde....A co kdyby jsi mi poradil jak upravit existujicí program.
noko
Profil
Hm,
aby jsi upravil nějaký program, tak musíš umět programovací jazyk ve kterém je ten program napsaný.
Fisir
Profil
Reaguji na noka:
Co to tu prosímtě vyvádíš? Tazatel má znalosti na úrovni mateřské školy a ty mu tady radíš začít s Javou?

Reaguji na dominicka:
tvorba programovacího jazyka […] chtěl bych si vytvořit něco jako HTML jazyk
HTML není programovací jazyk. Je to značkovací jazyk, což je něco diametrálně odlišného, než jazyk programovací. Chceš si teda vytvořit vlastní programovací jazyk (což je třeba PHP a dají se v něm psát všemožné interaktivní aplikace), nebo značkovací jazyk (ve kterém se dají psát dokumenty)?

Jestli ti jde jenom o možnost psát tagy česky a ne anglicky, tak bych se být tebou spíš naučil anglicky, než překládal HTML do češtiny. Zkrátka jestli chceš programovat nebo kódovat, aspoň trochu anglicky umět musíš. To už jsme ti tu psali dřív.
Keeehi
Profil
dominicek:
Vytoření programovacího jazyka není nic jednoduchého. Učí se to na vysoké škole. Na Fakultě informačních technologií ČVUT se to učí jen v některých oborech a co mám informace, tak ty předměty patří k těm těžším. Na bakaláři to je předmět Programovací jazyky a překladače a na magistru předmět Generování kódu. Nějaké starší přednášky jsou veřejně dostupné na edux.fit.cvut.cz/oppa/BI-PJP a edux.fit.cvut.cz/oppa/MI-GEN

Přidám ještě seznam doporučené literatury:
• Melichar, B.: Jazyky a překlady. Vydavatelství ČVUT, Praha 1996.
• Melichar, B, Češka, M. a kol.: Konstrukce překladačů. Praha, Vydavatelství ČVUT 2006.
• Aho, Motwani, Ullman: Introduction to Automata Theory, Languages, and Computation (3rd ed.), Addison-Wesley, 2006.
• Aho, Lam, Sethi, Ullman: Compiler: Principles, Techniques and Tools (2nd ed.), Addison-Wesley, 2010.
• Muchnick: Advanced compiler design and implementation, Morgan Kaufman Publishers, 2009.
• Fischer, LeBlanc: Crafting a Compiler, 1995.
• Louden, K.: Compiler Construction, Thomson, 1997.
• Müller K,: Programovací jazyky. Vydavatelství ČVUT, Praha 2001
• Nešvera, Š. Programovací jazyky: cvičení. Praha: ČVUT, 2002. ISBN 80-01-02522-5.
• Wirth, N. ''Compiler Construction''. Addison-Wesley, 1996. ISBN 0201403536.




To se týká tvoření vlastních jazyků a překladačů. Pokud ti jde jen o prosté nahrazení textu textem, tak to zas tak složité není. V c++ by to vypadalo třeba takto:
#include <utility>
#include <string>
#include <iostream>
#include <vector>

using namespace std;


int main () {
    vector<pair<string, string> > translations;

    translations.push_back(make_pair("tělo", "body"));
    translations.push_back(make_pair("odstavec", "p"));

    string line;
    string content;
    content = "";
    while (getline(cin, line)) {
        content += line+'\n';
    }

    for (vector<pair<string, string> >::iterator it = translations.begin() ; it != translations.end(); ++it) {
        size_t index = 0;
        while (true) {
            index = content.find(it->first, index);
            if (index == string::npos) {
                break;
            }

            content.replace(index, it->first.length(), it->second);

            index += it->second.length();
        }
    }

    cout << content;
}
noko
Profil
Fisir:
Co to tu prosímtě vyvádíš? Tazatel má znalosti na úrovni mateřské školy a ty mu tady radíš začít s Javou?
Já si myslím že vůbec nehrozí že by se dominicek začal cokoliv učit
dominicek
Profil
Omlouvám se nechci programovací jazy, ale ZNAČKOVACÍ jazyk!...A nechci to pro sebe ale jen tak pro lidi kteří mají problém s AJ.
Jen chci vytvořit něco v čem to budu psát česky a pak mi to samo přeloží do AJ tedy napíšu třeba:
<html>
<hlavicka>
<titulek>blabla</titulek>
</hlavicka>
<telo>
blabla
</telo>
</html>

Pak to dám přeložit a vznikne z toho tohle:
<html>
<head>
<title>blabla</title>
</head>
<body>
blabla
</body>
</html>

Snad jsem to napsal srozumitelně!
Bubák
Profil
Keeehi:
Pokud ti jde jen o prosté nahrazení textu textem, tak to zas tak složité není.
Na to by stačilo i makro napsané v MS Wordu, případně script v PHP nebo JS.

noko:
Já si myslím že vůbec nehrozí že by se dominicek začal cokoliv učit
Hlavně, když dominicek ví, co chce:
#1 „jak se dá vytvořit vlastní programovací jazyk
#16 „to nemá cenu se s tebou bavit kdyz nechápeš co chci....Nechci vytvářet programovací jazyk
dominicek
Profil
Bubák:
noko:
„Já si myslím že vůbec nehrozí že by se dominicek začal cokoliv učit“
Hlavně, když dominicek ví, co chce:
#1 „jak se dá vytvořit vlastní programovací jazyk“
#16 „to nemá cenu se s tebou bavit kdyz nechápeš co chci....Nechci vytvářet programovací jazyk“
Hele sorry spletl jsem se...ty ses nikdy nespletl?...nebo si myslíš že učeň spadl z nebe?...Zbytečně tady pridáváš odpovědí, které absolutně a bez významě nikam nevedou!....Tak pokud nemáš smyslu plnou odpověď, která mi pomůže, tak se nesnaž...
lionel messi
Profil
dominicek:
Zbytečně tady pridáváš odpovědí, které absolutně a bez významě nikam nevedou!....Tak pokud nemáš smyslu plnou odpověď, která mi pomůže, tak se nesnaž...

Akosi si zrejme v rozčúlení prehliadol prvú časť Bubákovho príspevku:

Na to by stačilo i makro napsané v MS Wordu, případně script v PHP nebo JS.
dominicek
Profil
lionel messi:
Akosi si zrejme v rozčúlení prehliadol prvú časť Bubákovho príspevku:
>
„Na to by stačilo i makro napsané v MS Wordu, případně script v PHP nebo JS.“
Jo promiň.
Ale nevím co je to makro a jak s ním pracovat a JS neumím a php prakticky skoro vubec. teprve se učím html.
noko
Profil
dominicek:
Ale nevím co je to makro a jak s ním pracova
Jak vyhledávat na internetu
dominicek
Profil
Prosím tě noko nepiš mi tady. Dík!
noko
Profil
dominicek
Tak jo
« 1 2 »

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: