olski.skład.składnia¶
Abstrakcyjna składnia: co da się powiedzieć, bez tego, jak to brzmi.
Kategoria mówi, jaki byt drzewo w tym miejscu trzyma, a konstruktor mówi, co z czym wolno złożyć. Drzewo dobrze złożone jest jednoznaczne z definicji, więc jednoznaczność tego zapisu nie potrzebuje żadnego sprawdzenia: kształt drzewa jest tym, co niesie znaczenie.
Kategorie dzielą się na dwa moduły po tym, co która niesie.
Tutaj są te, które orzekają: zdanie, jego pozycje i to, co do niego dochodzi.
Te, które niosą rzecz, trzyma olski/skład/grupa.py.
Poziomem tych kategorii jest dziedzina, a nie polszczyzna.
Czyj w olski/skład/grupa.py mówi, że jedna rzecz jest określeniem drugiej,
a że wyjdzie z tego dopełniacz, rozstrzyga linearyzacja.
Tak samo Okolicznik tutaj: drzewo mówi, że coś jest celem,
a przypadek po przyimku przychodzi z olski/skład/przyimki.py.
Ten poziom jest tym, co odróżnia ten zapis od rozbioru zdania pisanego z góry;
wywód trzyma
docs/design-notes.md.
Szyk jest tu skutkiem, a nie zapisem.
Drzewo mówi, co w zdaniu jest tematem, a co nowe, przez Wyróżnienie,
i dopiero z tego wychodzi kolejność, w której konstytuenty się wypisują.
Czasownik przy tym nie rusza się nigdy,
więc wyróżnienie przestawia to, co wokół niego stoi, a nie całe zdanie.
Kolejności dokładają do tego konstrukcje, w których autor nie wybiera.
Zaimek względny otwiera zdanie podrzędne zawsze,
więc rzecz wskazana przez Opis staje w nim na czele, czymkolwiek w nim jest.
Okoliczność wyrażona zdarzeniem staje na czele zdania,
o ile pozwala na to jej spójnik, i mówi o tym leksykon,
bo jest to fakt o słowie, a nie o zdaniu, w którym ono stoi.
Treść staje na końcu zdania, bo zdanie podrzędne wprowadzone przez że
stoi za całym zdaniem nadrzędnym i nie ma czym wyjść przed nie.
Czego drzewo nie niesie, jest tu decyzją, a nie brakiem.
Nie ma w nim przypadka, bo przypadek bierze się z pozycji.
Nie ma rodzaju, bo rodzaj rzeczownika jest leksykalny.
Nie ma osoby ani czasu, bo obie te rzeczy niesie olski/skład/kontekst.py:
czas jest własnością opowiadania, a nie pojedynczego zdarzenia.
Dziura jest jedna i jest dziurą, a nie decyzją.
Wewnątrz grupy imiennej szyku nie ma,
bo Jaki w olski/skład/grupa.py stawia przymiotnik przed rzeczownikiem zawsze,
choć przymiotnik po rzeczowniku nazywa, a przed nim określa.
Miejsce tego w torze nazywa docs/roadmap.md.
CZASY = {'teraz': lambda podmiot: ('fin', dict(number=podmiot.number, person='ter')), 'kiedyś': lambda podmiot: ('praet', dict(number=podmiot.number, gender=podmiot.rodzaj))}
module-attribute
¶
PRZYPADKI_DOPEŁNIENIA = (BIERNIK, DOPEŁNIACZ)
module-attribute
¶
NAZWY_POZYCJI = {BIERNIK: 'dopełnienia w bierniku', DOPEŁNIACZ: 'dopełnienia w dopełniaczu', CELOWNIK: 'dopełnienia w celowniku', BEZOKOLICZNIK: 'bezokolicznika', ZDANIE_PODRZĘDNE: 'zdania podrzędnego'}
module-attribute
¶
OKOLICZNOŚCI = (Okolicznik, Przysłówek)
module-attribute
¶
PozaRamą
¶
Bases: Exception
Drzewo żąda od słowa pozycji, której jego rama nie ma.
Wyjątek, a nie zdanie wypuszczone mimo to,
z tego samego powodu co BrakFormy w olski/skład/morfologia.py:
to jest błąd kompilacji,
bo Linter pomaga dobry kod. nie jest zdaniem polskim
i nikt takiego nie chciał napisać.
Ramę ma tu czasownik, przyimek i spójnik, a pytanie jest we wszystkich trzech wypadkach jedno: czy leksykon zna to, co autor postawił w drzewie. Spójnik pytany jest przy tym o dwie rzeczy, bo o dwóch mówi: o relacji, w której stoi, i o tym, czy jego zdanie staje na czele pary.
Source code in olski/skład/składnia.py
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | |
Okolicznik
dataclass
¶
Bases: Wyróżnialne
Okoliczność w relacji: w piwnicy, wzrokiem, gdy bazyliszek otworzył oczy.
Relacja jest kategorią dziedziny i to ona stoi w drzewie,
a słowo, którym polszczyzna ją wyraża, rozstrzyga o sobie tyle,
ile go od relacji odróżnia: w mówi, gdzie i kiedy,
a gdy mówi tylko kiedy.
Okoliczność bywa rzeczą albo zdarzeniem i jest to jedna kategoria,
bo pytanie stawia się jedno.
Różnią się one tym, czym słowo przed nimi jest po polsku:
przed rzeczą stoi przyimek, który rządzi przypadkiem (olski/skład/przyimki.py),
a przed zdarzeniem spójnik, który nie rządzi niczym (olski/skład/spójniki.py),
bo zdanie podrzędne rozdaje przypadki własne.
Przyimkiem żadnym jest pusty napis, bo część relacji polszczyzna wyraża
samym przypadkiem, a rola bez przyimka jest tu tą samą kategorią co z nim.
Narzędzie wychodzi tak zawsze, a czas ma obie drogi naraz:
wieczorem i w nocy odpowiadają na jedno pytanie
i różnią się tym, czy relacja wyszła na wierzch słowem.
Przyłączenie stoi w drzewie i to jest cała różnica między tym kierunkiem
a parserem, któremu docs/subset.md zostawia je przy czytelniku:
okolicznik postawiony przy czasowniku i określenie postawione przy rzeczy
są dwoma różnymi drzewami, więc nie ma tu czego rozstrzygać po fakcie.
Source code in olski/skład/składnia.py
132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 | |
słowo
instance-attribute
¶
relacja
instance-attribute
¶
co
instance-attribute
¶
zdarzeniem
property
¶
Czy pod tą okolicznością stoi zdarzenie, a nie rzecz.
wysuwalna
property
¶
Czy wolno postawić tę okoliczność na czele zdania.
Grupa imienna staje na czele zawsze, bo szyk polszczyzny jest swobodny i o wysunięciu rozstrzyga to, o czym zdanie jest. Zdarzenie staje tam, gdy pozwala na to jego spójnik, i to jest jedyne miejsce w tym pliku, w którym leksykon mówi o szyku.
__init__(słowo, relacja, co)
¶
__post_init__()
¶
Source code in olski/skład/składnia.py
179 180 181 182 183 184 185 | |
linearyzuj(kontekst=TERAZ)
¶
Słowo wraz z tym, co po nim stoi: zdanie podrzędne albo grupa imienna.
Source code in olski/skład/składnia.py
187 188 189 190 191 192 | |
Komu
dataclass
¶
Bases: Wyróżnialne
Ten, komu zdarzenie się przydarza: parser pokazuje autorowi czytania.
Kategorią dziedziny jest tu uczestnik, a nie przypadek, i dlatego stoi tu
kategoria osobna, a nie druga rola wrzucona obok pierwszej.
Zdarzenie ma uczestników dwóch i nie są oni wymienni:
ten, komu się coś daje, mówi się albo pokazuje, jest kimś innym niż to,
co się daje, i drzewo ma powiedzieć, który jest który.
Że wychodzi z tego celownik, rozstrzyga rama, tak samo jak rozstrzyga ona
o przypadku dopełnienia (Robi niżej).
Nazwą jest pytanie, bo polszczyzna nie ma na tego uczestnika jednego słowa:
dawać stawia tam odbiorcę, pomagać tego, komu się pomaga,
a dziękować tego, komu się dziękuje, i wszyscy trzej odpowiadają, komu.
Tyle jest w tej konwencji nazw, ile jest w niej pytań,
i tak samo nazywają się relacje okolicznikowe w olski/skład/słownik.py.
Zdarzenia ta pozycja nie bierze i tym różni się od okoliczności:
w celowniku stoi w polszczyźnie grupa imienna,
a zdarzenie wypełnia pozycję ramy bezokolicznikiem albo treścią,
czyli pozycją osobną (Treść wyżej).
Source code in olski/skład/składnia.py
195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 | |
Przysłówek
dataclass
¶
Bases: Wyróżnialne
Okoliczność wyrażona jednym słowem: wkrótce, nagle.
Stopnia drzewo nie niesie i dlatego linearyzacja żąda równego:
przysłówek w stopniu wyższym mówi co innego niż w równym,
a mówienie tego dopiero czeka na kategorię.
Przysłówka, który stopnia nie ma, żądanie to nie dotyczy,
i rozstrzyga to odmień w olski/skład/morfologia.py.
Source code in olski/skład/składnia.py
225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 | |
Treść
dataclass
¶
To, co ktoś mówi, wie albo w co nie wierzy: zdarzenie jako uczestnik.
Kategorią dziedziny jest tu treść, a nie zdanie podrzędne,
i zawinięcie jest potrzebne, bo drzewo samo tej różnicy nie niesie.
V.chcieć(kot, V.spać(kot)) i V.wiedzieć(kot, Treść(V.spać(kot)))
stawiają pod czasownikiem to samo zdarzenie i mówią dwie różne rzeczy,
więc nie ma jak policzyć tego z tego, kto w zdarzeniu działa.
Po co ta kategoria jest opowieści, mówi docs/kategorie-zapisu.md.
Zdaniem ta klasa nie jest, choć zdanie w sobie trzyma,
i jest to rozstrzygnięcie, a nie wygoda dziedziczenia.
Zdaniem jest to, co orzeka o kimś, a treść o nikim nie orzeka:
stoi w roli uczestnika i o tym, kto ją niesie, mówi czasownik nad nią.
Gdyby zdaniem była, Okolicznik wpuściłby ją tam, gdzie czeka na zdarzenie,
i wypuścił gdy że, czyli dwa spójniki jeden po drugim.
Pól ta klasa nie ma poza objętym zdaniem i każde z brakujących ma swój powód.
Kontroli nie ma czego zapisywać, bo zdanie podrzędne niesie podmiot własny,
a przeczenia tym bardziej: dopełniacz negacji przez tę pozycję nie sięga,
bo zdanie podrzędne rozdaje przypadki własne.
Idzie to samo z siebie, bo Kontekst.podrzędne nie przekazuje w dół
ani wykonawcy, ani przeczenia, i jest to ta sama metoda, która puszcza czas.
Wyróżnienia ta klasa nie przyjmuje, bo pozycję ma jedną i wziętą z polszczyzny,
a nie z tego, o czym zdanie jest; rozstrzyga o niej _miejsce niżej.
Source code in olski/skład/składnia.py
242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 | |
Zdanie
¶
To, co orzeka o kimś: jedno zdarzenie albo kilka opowiedzianych naraz.
Klasa ta jest tu po to, żeby dało się o nią zapytać. Okolicznik pyta, bo od tego zależy, czy jego słowo jest przyimkiem, czy spójnikiem, a lista kategorii wypisana obok rozjechałaby się z pierwszą kategorią dopisaną i tam niedopisaną.
Wnosi jedno liczenie i żąda za nie trzech rzeczy, które daje każda kategoria: podmiotu, o którym zdanie orzeka, czasownika, którym orzeka, oraz konstytuentów, czyli tego, z czego się wypisuje.
Source code in olski/skład/składnia.py
456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 | |
podmioty
property
¶
Role, które w tym zdaniu stoją jako podmiot, wraz z tymi ze zdań pod nim.
Zdanie proste ma jeden podmiot, a złożone ma go tyle, ile ma zdarzeń,
i wszystkie one są tym, na co czytelnik trafia,
szukając podmiotu, którego zdanie obok nie wypisało.
Liczą się przez to zdania z każdego piętra drzewa (_zdania_głębiej),
a nie z dwóch pierwszych: Mysz goniła ogon myszy, która spała.
ma dwa podmioty, a z dwóch pięter widać jeden.
Kontekstu ta lista nie dostaje i nie ma po co, bo pyta o role wypisane w drzewie, a kontekst rozstrzyga o formach.
sprawcy
property
¶
Rzeczy, o których to zdanie orzeka wprost, bez zdań stojących pod nim.
Pyta o co innego niż podmioty i dlatego wydaje co innego.
Tamto szuka podmiotów, na które trafia czytelnik, więc wydaje role;
to szuka tych, których czasownik nad tym zdaniem ma wskazać,
gdy stoi ono jako bezokolicznik, więc wydaje rzeczy spod ról,
czyli dokładnie to, co niesie Kontekst.sprawca.
Zdanie proste ma jednego sprawcę, a ciąg zdarzeń ma po jednym na zdarzenie,
bo bezokoliczników w nim wyjdzie tyle samo.
uczestnicy(kontekst=TERAZ)
¶
Role, które w tym zdaniu stoją jako uczestnik zdarzenia, wraz z przypadkiem.
Przypadek idzie razem z rolą, bo osobno żadne z dwojga nie mówi, którą formą uczestnik w zdaniu stanie, a to jest jedyne pytanie, dla którego ta lista istnieje.
Uczestnikiem nie jest okoliczność, i to jest tu cała treść:
rzecz spod przyimka staje w przypadku, którego żąda ten przyimek,
a nie w tym, który by jej przypadł z roli w zdarzeniu.
Przez to samo lista ta mówi coś, czego po samych formach nie widać,
i korzysta z tego olski/skład/przegląd.py.
Nie schodzi ona pod konstytuenty, inaczej niż podmioty wyżej,
bo uczestnicy dwóch zdań zestawieni w jedną listę
dawaliby parę, która przy żadnym orzeczeniu razem nie stanęła;
po zdania schodzi konteksty niżej.
Source code in olski/skład/składnia.py
505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 | |
konteksty(kontekst=TERAZ)
¶
To zdanie wraz z tymi, które stoją pod nim, każde w swoim kontekście.
Jednostką jest tu orzeczenie, bo tyle wystarcza, żeby o dwóch rolach powiedzieć, że stanęły przy jednym.
Kontekst idzie razem ze zdaniem, bo bez niego nie wiadomo,
jakim napisem to zdanie wyszło: zdanie podrzędne mówi o wskazanej rzeczy
zaimkiem, a zdanie po zdaniu o tym samym podmiocie podmiotu nie wypisuje.
Liczy się go tą samą drogą, którą idzie linearyzacja,
bo druga kopia mierzyłaby tekst, którego ten plik nie składa;
tak samo robi Akapit.konteksty w olski/skład/opowieść.py piętro wyżej.
Source code in olski/skład/składnia.py
525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 | |
Jest
dataclass
¶
Bases: Zdanie
Orzeczenie imienne: zwykły tekst polski jest wejściem.
Orzecznik idzie w narzędniku, bo tyle bierze kopula.
Szyk wychodzi z wyróżnień tak samo jak przy zdarzeniu,
więc Wejściem jest zwykły tekst polski. jest tu orzecznikiem postawionym
na czele wraz z podmiotem odesłanym na koniec, a nie wariantem linearyzacji.
Kopula jest polem, a nie stałą, bo autor wybiera między orzekaniem
o tym, co jest, a orzekaniem o tym, co się kimś staje albo kimś zostaje,
i jest to wybór dziedziny, a nie forma do policzenia.
Wybór ogranicza leksykon, tak samo jak przy czynności:
orzecznik w narzędniku bierze kopula i nikt poza nią,
więc lemat, którego rama go nie ma, zgłasza się tutaj
(olski.walencja.KOPULA).
Okoliczność dochodzi do orzekania tak samo jak do czynności,
bo pytanie, na które ona odpowiada, jest w obu wypadkach to samo,
i dlatego Kot jest zwierzęciem w piwnicy. wychodzi z tej kategorii.
Source code in olski/skład/składnia.py
556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 | |
CZASOWNIK = 'być'
class-attribute
instance-attribute
¶
co
instance-attribute
¶
czym
instance-attribute
¶
czasownik = CZASOWNIK
class-attribute
instance-attribute
¶
okoliczniki = ()
class-attribute
instance-attribute
¶
przeczenie = False
class-attribute
instance-attribute
¶
podmiot
property
¶
konstytuenty
property
¶
__init__(co, czym, czasownik=CZASOWNIK, okoliczniki=(), przeczenie=False)
¶
__post_init__()
¶
Source code in olski/skład/składnia.py
589 590 591 | |
uczestnicy(kontekst=TERAZ)
¶
Source code in olski/skład/składnia.py
601 602 | |
linearyzuj(kontekst=TERAZ)
¶
Source code in olski/skład/składnia.py
604 605 606 607 608 609 610 611 612 613 614 615 | |
Robi
dataclass
¶
Bases: Zdanie
Zdanie o czynności: program zapisuje ustawienia.
Dopełnienie nie pyta, czy stoi pod nim rzecz, czy zdarzenie,
i jest to ta sama jedna kategoria, którą Okolicznik ma o piętro obok.
Czeladnik zaczął pracę. i Czeladnik zaczął pracować.
mówią, co zaczął, a różnią się tym, czy zaczął rzecz, czy zdarzenie.
Że wychodzi z tego raz biernik, a raz bezokolicznik bez podmiotu,
rozstrzyga linearyzacja, tak samo jak rozstrzyga przypadek.
Trzecią rzeczą, która tam stoi, jest Treść wyżej,
czyli zdarzenie, o którym podmiot coś orzeka, zamiast je wykonywać.
Pytana o wszystkie trzy jest rama z leksykonu walencyjnego, bo wszystkie są jej
pozycjami, a pytanie pada jedno: czy pozycja, którą ten konstytuent zajmuje,
stoi w ramie tego czasownika.
Rama jest zbiorem, więc pozycja dopisana do leksykonu nie dokłada tu gałęzi
(rama w olski/walencja.py).
Pytany jest ten sam plik, o który pyta parser po drugiej stronie,
bo rama jest faktem o słowie, a nie o kierunku.
Ostatnie z tych pytań waży najwięcej przy czasowniku, który bierze i biernik:
zamykać biernik bierze, a Zamykał, że okno stało. nie jest zdaniem,
i to leksykon jest jedyną rzeczą, która te dwa czasowniki rozdziela.
Dopełnienie pyta przy tym o dwa przypadki naraz i staje w tym, który rama ma,
bo przypadek bierze się tu z pozycji jak wszędzie indziej:
Czeladnik szukał córki krawca. i Czeladnik zasłonił twarz.
wychodzą z drzewa tego samego kształtu, a autor nie pisze przypadka w żadnym
(PRZYPADKI_DOPEŁNIENIA).
Uczestnik w celowniku stoi obok tego dopełnienia, a nie zamiast niego,
i dlatego ma tu osobne pole:
Parser pokazuje autorowi czytania. wypełnia dwie pozycje ramy naraz,
a o tym, która rzecz stoi w której, mówi Komu wyżej.
Kopuli ta kategoria nie bierze wcale, i jest to ta sama odmowa co powyższe:
rama kopuli ma orzecznik, a orzecznikiem orzeka Jest obok,
więc Parser jest. nie wychodzi stąd tak samo, jak nie wyprowadza się z olskiego.
Sprawca bezokolicznika stoi w drzewie, a nie w leksykonie,
i jest nim ta sama zmienna postawiona dwa razy, jak w Opis i w Postać.
Drzewo, które postawiło tam kogoś innego, zgłasza się,
bo bezokolicznik podmiotu nie ma i wyszedłby tekstem o kimś innym;
czego polszczyzna mówi tam zamiast niego, trzyma docs/kategorie-zapisu.md.
Pytania padają w konstruktorze, a nie w linearyzacji, bo to konstruktor mówi, co z czym wolno złożyć, i bo drzewo, które tego nie przechodzi, jest błędne całe, a nie w tym jednym miejscu, gdzie się je wypisuje.
Przeczenie stoi tu polem, a nie osobnym konstruktorem,
bo sięga dwóch rzeczy naraz: stawia nie przed czasownikiem
i zabiera dopełnieniu biernik na rzecz dopełniacza,
a te dwie rzeczy są jedną decyzją i rozjechać się nie mogą.
Pierwszą z nich robi Zdanie dla obu kategorii, a druga jest tutaj,
bo orzeczenie imienne dopełnienia nie ma.
Source code in olski/skład/składnia.py
648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 | |
kto
instance-attribute
¶
czyn
instance-attribute
¶
co = None
class-attribute
instance-attribute
¶
komu = None
class-attribute
instance-attribute
¶
okoliczniki = ()
class-attribute
instance-attribute
¶
przeczenie = False
class-attribute
instance-attribute
¶
czasownik
property
¶
Lemat, którym to zdanie orzeka.
Czyn jest kategorią dziedziny, a czasownik słowem, które z niej wychodzi, więc jedno pole odpowiada tu na dwa pytania i oba są nazwane: drzewo pisze się czynem, a o formę pyta się czasownika.
podmiot
property
¶
konstytuenty
property
¶
__init__(kto, czyn, co=None, komu=None, okoliczniki=(), przeczenie=False)
¶
__post_init__()
¶
Source code in olski/skład/składnia.py
713 714 715 716 717 718 719 720 721 722 | |
uczestnicy(kontekst=TERAZ)
¶
Podmiot, a wraz z nim ci uczestnicy, którzy są rzeczą, a nie zdarzeniem.
Bezokolicznik podmiotem nie stanie, więc uczestnikiem nie jest:
pytanie, dla którego ta lista istnieje, jest pytaniem o role wymienne.
Celownik stanąć nim nie może z innego powodu i wchodzi tu mimo to,
bo powód ten jest formą, a nie kategorią: rzeczownik ma celownik różny
od mianownika i to rozstrzyga olski/skład/przegląd.py, a nie ta lista.
Source code in olski/skład/składnia.py
808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 | |
linearyzuj(kontekst=TERAZ)
¶
Source code in olski/skład/składnia.py
825 826 827 828 829 830 831 832 833 | |
Ciąg
dataclass
¶
Bases: Zdanie
Kilka zdarzeń opowiedzianych jednym zdaniem: podniósł deskę i zszedł.
Kategorią dziedziny jest tu następstwo, a nie spójnik.
Autor mówi, że jedno stało się po drugim i że jest to jedna rzecz do opowiedzenia,
a to, że wychodzi z tego i, rozstrzyga linearyzacja,
tak samo jak rozstrzyga przypadek.
Węższe to jest niż polskie i, które łączy także zdarzenia równoczesne,
i węższe z rozmysłu: kolejność zdarzeń niesie tu kolejność zapisu,
więc kategoria, która by o niej nie mówiła, kłamałaby o połowie swoich zdań.
Od koordynacji bytów różni się tym, czego żąda opuszczenie podmiotu.
Byty stoją w jednej roli i żaden z nich nie ma czasownika,
a zdarzenia mają go po jednym, więc drugie z nich mówi o tym samym,
o kim mówiło pierwsze, i podmiotu nie powtarza.
Rozstrzyga o tym pomijalny niżej, czyli ten sam warunek,
z którego korzysta akapit, bo pytanie jest jedno:
czy czytelnik odzyska podmiot, którego nie ma.
Source code in olski/skład/składnia.py
891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 | |
zdarzenia
instance-attribute
¶
podmiot
property
¶
czasownik
property
¶
konstytuenty
property
¶
podmioty
property
¶
Podmioty wszystkich zdarzeń, a nie samego pierwszego.
Domyślne liczenie schodzi pod konstytuenty, a te ciąg ma sklejone, więc znalazłoby zdania pod zdarzeniami i minęłoby same zdarzenia.
sprawcy
property
¶
Sprawca każdego zdarzenia, bo bezokolicznik wyjdzie z każdego osobno.
Zdania pod zdarzeniami tu nie wchodzą, w odróżnieniu od podmioty:
Chciał podnieść deskę i zejść po schodach. żąda jednego sprawcy
od dwóch bezokoliczników, a zdanie z bo pod którymś z nich
ma podmiot własny i wychodzi z formą osobową.
__init__(zdarzenia)
¶
uczestnicy(kontekst=TERAZ)
¶
Żadnych, bo ciąg własnego orzeczenia nie ma, tylko po jednym na zdarzenie.
Podmiot ciąg ma mimo to, i jest nim podmiot pierwszego zdarzenia,
bo o to pyta pomijalny, składając ciąg ze zdaniem obok.
Tu odpowiedź jest inna, bo inne jest pytanie:
uczestnicy stają przy orzeczeniu, a nie przy zdaniu,
więc szuka się ich w konteksty niżej, po jednym zdarzeniu naraz.
Source code in olski/skład/składnia.py
946 947 948 949 950 951 952 953 954 955 | |
konteksty(kontekst=TERAZ)
¶
Zdania wszystkich zdarzeń, a nie samego ciągu, każde w kontekście z _kolejno.
Source code in olski/skład/składnia.py
975 976 977 978 | |
linearyzuj(kontekst=TERAZ)
¶
Source code in olski/skład/składnia.py
980 981 | |
Opis
dataclass
¶
Bases: Rola
Rzecz wskazana zdarzeniem, w którym stoi: postaci, których nikt nie liczył.
Kategorią dziedziny jest tu wskazywanie, a nie zdanie podrzędne.
Jaki wskazuje rzecz cechą, ta klasa wskazuje ją zdarzeniem,
i pytanie jest w obu wypadkach jedno: o którą rzecz mowa.
Że wychodzi z tego przydawka zdaniowa wraz z zaimkiem i przecinkami,
rozstrzyga linearyzacja, tak samo jak rozstrzyga przypadek.
Które miejsce w zdarzeniu zostaje zaimkiem, mówi tożsamość obiektu,
a nie osobny znacznik postawiony w tym miejscu.
Autor pisze rzecz raz i stawia tę samą zmienną w zdaniu, które ją opisuje,
czyli robi to samo, co robi z Postać w olski/skład/opowieść.py:
tam ta sama zmienna dwa razy jest jedną rzeczą w dwóch zdaniach,
a tutaj jest jedną rzeczą w zdaniu nadrzędnym i podrzędnym naraz.
Zdanie, które tej rzeczy nie stawia w miejscu, skąd zaimek wyjdzie na czoło,
zgłasza się od razu, bo opis, który nie opisuje, jest błędem drzewa.
Czym jest to miejsce, mówi _wskazany.
Source code in olski/skład/składnia.py
984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 | |
rzecz
instance-attribute
¶
zdanie
instance-attribute
¶
number
property
¶
rodzaj
property
¶
tożsamość
property
¶
__init__(rzecz, zdanie)
¶
__post_init__()
¶
Source code in olski/skład/składnia.py
1009 1010 1011 1012 | |
wewnątrz(kontekst)
¶
Kontekst zdania opisującego: podrzędne wraz z rzeczą, którą ma wskazać.
Wydzielone z linearyzacji, bo pyta o to samo _zdania_pod,
a bez tej rzeczy opis wychodziłby stamtąd zdaniem, w którym zaimka nie ma,
czyli napisem, którego autor nie dostał.
Source code in olski/skład/składnia.py
1026 1027 1028 1029 1030 1031 1032 1033 | |
linearyzuj(case, kontekst=TERAZ)
¶
Rzecz, przecinek, zdanie o niej, a przecinek zamykający jako żądanie.
Przypadek dostaje sama rzecz, bo to ona stoi w zdaniu nadrzędnym,
a zdanie podrzędne rozdaje przypadki własne.
Czas dostaje ono od podrzędne w olski/skład/powierzchnia.py,
a od tej metody to, którą rzecz ma powiedzieć zaimkiem.
Pomijanie podmiotu w nim nie działa, i to nie jest brak:
podmiot opuszczony w zdaniu podrzędnym czytałby się jako ten,
którego zaimek właśnie zastąpił.
Przecinek otwierający staje tutaj, bo stoi w środku tego kawałka, a zamykający zostaje żądaniem, bo stoi na jego krańcu i rozstrzyga o nim to, co obok stanie.
Source code in olski/skład/składnia.py
1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 | |
forma_czasownika(czasownik, podmiot, kontekst)
¶
Forma czasownika, którą ten podmiot z niego wyciąga.
Tędy idzie każde zdanie, bo zgodność z podmiotem jest jedna
i nie zależy od tego, czy orzeka się czynność, czy bycie czymś.
Tędy idzie też pytanie odwrotne, które stawia pomijalny:
forma jest wszystkim, co po opuszczonym podmiocie zostaje,
więc jest też miarą tego, czy da się go opuścić.
Zdanie, którego wykonawca przychodzi z góry, nie pyta o zgodność wcale. Bezokolicznik nie niesie ani osoby, ani rodzaju, ani czasu, bo wszystkie trzy niesie czasownik nad nim, i dlatego czasu nie ma tu czym uzgadniać ani po co.
Source code in olski/skład/składnia.py
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | |
szyk(pozycje)
¶
Kolejność wypisania: czoło, środek w porządku domyślnym, koniec.
Środek jest tu porządkiem, którego nikt nie wybierał, więc zdanie bez żadnego wyróżnienia wychodzi w szyku podmiot, czasownik, reszta.
Wyróżnione miejsce bierze jeden konstytuent, bo na czele stoi jedna rzecz,
więc drugi zgłasza się tak samo jak drugie dopełnienie w zdarzenie:
dwa tematy naraz są drzewem błędnym, a nie zdaniem o dziwnym szyku.
Zgłoszenie mówi o staniu, a nie o wyróżnieniu, bo część konstytuentów
dostaje to miejsce od _miejsce i autor nie napisał przy nich znacznika.
Source code in olski/skład/składnia.py
373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 | |
zdarzenie(kto, czyn, *reszta)
¶
Zdarzenie złożone z tego, co dostało, po kategoriach, a nie po pozycjach.
Pierwszy argument jest tym, kto działa, i stoi zawsze.
Reszta rozdziela się kategorią (_pole): okoliczności może być wiele,
a uczestnik jest w każdej pozycji jeden,
więc liczenie pozycji zostaje po tej stronie, a nie po stronie autora.
Czasownik nieprzechodni składa się więc tak samo jak przechodni,
a o pozycje pyta rama z leksykonu, którą sprawdza Robi.
Source code in olski/skład/składnia.py
852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 | |
nie(zdanie)
¶
To samo zdanie zaprzeczone.
Konstruktorem to nie jest, tylko zmianą jednej cechy zdania, bo zaprzeczone zdanie ma te same role co twierdzące i drugi konstruktor kazałby wypisać je jeszcze raz.
Sięga jednego orzeczenia, bo tyle znaczy nie w polszczyźnie,
więc ciąg zdarzeń przeczy się zdarzenie po zdarzeniu,
a nie w całości: Nie podniosła deski i nie zeszła po schodach.
Source code in olski/skład/składnia.py
877 878 879 880 881 882 883 884 885 886 887 888 | |
pomijalny(zdanie, poprzednie, kontekst)
¶
Podmiot, którego nie trzeba wypisywać, bo czytelnik odzyska go z czasownika.
Warunków jest cztery i każdy chroni przed inną stratą. Podmiot bez tożsamości nie jest tym samym podmiotem, tylko takim samym, a podmiot inny niż w zdaniu obok odsyła czytelnika do kogoś, o kim nie mowa. Podmiot opisany zdaniem przepada wraz z opisem, czyli wraz z tym, co autor o nim akurat powiedział, więc opuszczeniem to nie jest.
Czwarty warunek jest tym, którego reguła sama z siebie nie ma, a bez którego opuszczenie mówi co innego, niż mówił autor. Po opuszczonym podmiocie zostaje forma czasownika, więc podmiot wraca stamtąd tylko wtedy, gdy nikt inny tej samej formy z tego czasownika nie wyciąga. Skrzynia stojąca w piwnicy odbiera córce krawca rodzaj żeński, a bazyliszek odbiera czeladnikowi rodzaj męski, i wtedy podmiot staje wypisany, choć zdanie obok mówiło o tym samym. Liczone jest to tym samym czasownikiem, który podmiotu nie wypisze, bo różnice, których on nie robi, nie są różnicami dla czytelnika: czas przeszły rozdziela rodzaje, a teraźniejszy nie rozdziela żadnego.
Source code in olski/skład/składnia.py
1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 | |
po_poprzednim(zdanie, poprzednie, kontekst)
¶
Kontekst zdania stojącego za poprzednim, czyli z podmiotem opuszczonym albo nie.
Pytają o to trzy miejsca i muszą dostać tę samą odpowiedź:
akapit i ciąg zdarzeń, bo z tego składają tekst,
oraz odsiew olski/skład/makieta.py, bo pyta o zdanie, które akapit dopiero złoży.
Trzy kopie tego jednego wiersza rozjechałyby się na pierwszym warunku
dopisanym do pomijalny wyżej, a odsiew mierzyłby wtedy inny tekst,
niż akapit potem wypisze.
Source code in olski/skład/składnia.py
1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 | |
kompiluj(drzewo, kontekst=TERAZ)
¶
Drzewo jako zdanie: wielka litera na początku i kropka na końcu.
Wielkość litery należy do składu, a nie do lematu, bo ta sama rzecz stoi raz na początku zdania, a raz w jego środku.
Przecinek, którego żądają krańce zdania, nie staje nigdzie,
bo z jednej strony stoi kropka, a z drugiej nie stoi nic.
Odjąć go stąd nie ma czego: żądanie krańca jest polem Kawałek,
a nie znakiem doklejonym do napisu.
Source code in olski/skład/składnia.py
1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 | |