aboutsummaryrefslogtreecommitdiffstats
path: root/examples/http.aup
Commit message (Collapse)AuthorAgeFilesLines
* 140's apps written with the frictions gone: inflate's and linebreak's lists ↵eunhhu32 hours1-4/+2
| | | | declared together, linebreak's 0x2010 and 0x25CC (their modules the same), DNS's records = [] and 0xc000, HTTP's trailers, j = fields(...), RFC 6298's abs and tick.period (G written once), layout's lists together, its boxes and root as targets together, boxes = []; lines 121 to 120, 148 to 146, 176 to 169, 116 to 110; instructions within 0.2%
* The three spec apps without their workarounds (Pure 140 after its decision ↵eunhhu34 hours1-26/+15
| | | | point): inflate's code takes a bare list and its output is a bytes state, its block's tables built in the handler (lets' lists in inner blocks), 132 lines to 121; DNS's compression compares a suffix with == (bytes compared), 115 to 106; HTTP's left bytes a bytes state, names and codings compared as bytes, its field lines returned as a bare list, 159 to 148
* Pure 140's HTTP/1.1 requests a packet at a time (RFC 9112): ↵eunhhu36 hours1-0/+173
examples/http.aup, each packet an event, its bytes added to what the last left and every request they complete read (its line, its fields with names lowercased, a body by Content-Length or chunked, a chunked one's trailers; h11's grammar, sizes to 2^31), the rest kept for the next; no new form: the bytes left in a list of one (bytes are no state), names, the version and the coding compared as text (bytes have no ==; tokens are ASCII), the field lines returned in a record (a fn returns no bare list); 159 lines against Python's 79