Ohjelmointikielten lauserakenteen syntaksimalli?

Onko olemassa jotain yleispätevää esitystä ylipäätään minkä tahansa ohjelmointikielen osalta lauserakenteesta, josta näkee esim, missä järjestyksessä kääntäjä tai tulkki käsittelee kunkin avainsanan, tai varatun sanan.

Itse etsiskelin SQL:ään tämänkaltaista kaaviota, mutta en löytänyt äkkiseltään. Tiedän, että on varmasti olemassa jossain maailman kolkassa tai kirjassa moniin käyttötilanteisiin kattaviakin esityksiä, mutta nopealla Googletuksella ekoilta sivuilta ei löytynyt.

10

328

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Riippuu-tekijästä

      Ei ole yleispätevää toteutustapaa. Jokaisen kielen kohdalla, riippuen siitä miten systeemi on päätetty rakentaa, syntaksissa eri avainsanat sitovat eri vahvuudella eli käsittelyjärjestys voi vaihdella. Ollaksesi varma oikeasta käsittelyjärjestyksestä etsi tietoa kielikohtaisesti.

      SQL:ssäkin, joka ei varsinaisesti ole ohjelmointikieli, voi riippua ihan "SQL-murteesta" miten se on toteutettu. Kyllähän SQL:ää tietysti on jossain määrin standardisoitu eli tehty yhteisiä sopimuksia siitä miten asiat tehdään. Tässä esim. on esittely SQL:n ANSI-standardista: http://www.whoishostingthis.com/resources/ansi-sql-standards/ . SQLiten ymmärtämä SQL on esitelty täällä: https://www.sqlite.org/lang.html . MySQL:lle on omansa, jne.

    • Riippuu-tekijästä

      Ei ole yleispätevää toteutustapaa. Jokaisen kielen kohdalla, riippuen siitä miten systeemi on päätetty rakentaa, syntaksissa eri avainsanat sitovat eri vahvuudella eli käsittelyjärjestys voi vaihdella. Ollaksesi varma oikeasta käsittelyjärjestyksestä etsi tietoa kielikohtaisesti.

      SQL:ssäkin, joka ei varsinaisesti ole ohjelmointikieli, voi riippua ihan "SQL-murteesta" miten se on toteutettu. Kyllähän SQL:ää tietysti on jossain määrin standardisoitu eli tehty yhteisiä sopimuksia siitä miten asiat tehdään. Tässä esim. on esittely SQL:n ANSI-standardista: http://www.whoishostingthis.com/resources/ansi-sql-standards/ . SQLiten ymmärtämä SQL on esitelty täällä: https://www.sqlite.org/lang.html . MySQL:lle on omansa, jne.

    • BNF
    • BNF
    • Joo, tutustuin ja tuohon BNF-malliin viestini kirjoittamisen jälkeen muistaakseni jostain oppilaitoksen opintomonisteesta nappasin termin. Jos ei ole saatavilla, vähän kieleen, esim Javaan perehtymällä tai vähän enemmänkin perehtymällä on mahdollista luoda itsekin kyseinen kaava.

      • Tuo BNF-kaavio on tärkeä ihmiselle, joka ohjelmoi omaa ohjelmointikielen kääntäjää. Koulukurssilla oli kurssilla käytettävän pseudo-kielen kielioppi esitettynä.

        Nopealla hakukoneen vilkaisulla ainakin Java ja BNF-on yhdistetty tällaisella kiinalaisella saitilla:
        http://cui.unige.ch/isi/bnf/JAVA/BNFindex.html


    • Muistelun.nostalgia

      ATK-Instituutissa opetettiin muinoin teoreettistakin ohjelmointikieltä, puoliohjelmointia. Suomen näköisellä kielellä tehtiin kynällä paperille koetehtävät. Etuna oli se, että nk. puoliohjelmointi ei ollut riippuvainen mistään muotikielestä eikä murteesta, vaan oli kuin metakieli muiden kielten yläpuolella. Niin että rakenteesta ja termeistä tuli esille, mitä toimintoja tarkoitettiin, ja asia tai toiminta voitiin periaatteessa koodata mille kielelle hyvänsä.

      • uyuytuytuytuytu

        Tuo on oikein. Oikeaa ohjelmointia.


    • ATK-instituuttihan on datanomien ja merkonomien toisen asteen oppilaitos käsittääkseni. Yliopistossa on pseudo-kieli jo ensimmäisestä lukukaudesta lähtien mukana tietojenkäsittelyssä.

    • Jos oot nyt kattonut BNF:ää, niin vilaisehan tätä:

      https://fi.wikipedia.org/wiki/Yhteydetön_kielioppi

      Tunnetaan myös nimellä kontekstivapaa kielioppi, CFL, Context-Free Language.

      BNF muistuttaa näitä, joskaan ei ole sama asia.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. En voi jutella kanssasi

      tietenkään, mutta täällä voin sanoa sinulle, että se sinun hiljaisuutesi ja herkkyytesi eivät ole heikkoutta. Ne ovat ih
      Tunteet
      57
      7320
    2. Trump ja Vance murskasivat ja nolasivat Zelenskyn tiedotusvälineiden edessä Valkoisessa talossa.

      Jopa oli uskomaton tilaisuus Valkoisessa talossa. Zelensky jäi täydelliseksi lehdellä soittelijaksi suhteessa Trumpiin j
      Maailman menoa
      739
      3594
    3. Zelenskyi ei suostunut nöyrtymään Trumpin ja Vancen edessä, siksi meni pieleen

      Trumppia täytyy imarrella, silloin homma toimii aina. Tähän Zelenskyi ei suostunut.
      Maailman menoa
      371
      1978
    4. Mikä on kaivattusi ärsyttävin piirre?

      Mun kaivattu on erittäin vastahakoinen puhumaan itsestä. Kääntää puheenaiheen aina muuhun kun hänestä tulee puhetta.
      Ikävä
      165
      1816
    5. Koska olet rakastellut

      Kaivattusi kanssa viimeksi?
      Ikävä
      86
      1459
    6. Kokoomus haluaa hoitaa flussat yksityisellä, jotta säästettäisiin rahaa ja aikaa

      Mies hakeutui Terveystalo Kamppiin flunssaoireiden takia helmikuisena sunnuntai-iltana. Diagnoosiksi kirjattiin influens
      Maailman menoa
      84
      1401
    7. Miten saisin

      Sinut omakseni?
      Ikävä
      91
      1290
    8. Anteeksi Pekka -vedätys

      Apuna Ry:n somessa levinnyt Anteeksi Pakka -kampanja saa aina vaan kummallisempia piirteitä. ”Mä pyydän anteeksi. Mä
      Maailman menoa
      63
      1257
    9. Rakkaus ei iloitse vääryydestä vaan iloitsee yhdessä TOTUUDEN kanssa.

      Tajuatteko, että jotkut ihmiset pitävät siitä, kun toiset kaatuvat? He nauttivat siitä, kun toiset mokaavat tai käyttävä
      Idän uskonnot
      262
      1251
    10. Kumpi tästä

      Teidän tilanteesta teki vaikeaa? Sivusta
      Ikävä
      81
      1164
    Aihe