( bucko | 2021. 11. 22., h – 23:23 )

Amit tanultam, az a "takarás", amit 1990 óta még egyszer sem hallottam. Az indoklást - miért írom így a programot - egyész pontosan leírtam feljebb. Szerintem egy 4-8000 soros, több száz automatát futtató adatfeldolgozó programban néhány backslash a kezdők legnagyobb problémája. ;) Automatikusan beleírtam, majd gondoltam, hogy mégis maradhat. Indoklást erre is írtam feljebb.

A 40 kB adat helyett itt 484..704 MB adatról van szó. Egy mai gépen durva becslés szerint 1 perc futásidő várható. (awk) Szerintem a shell ennél lassabb lehet. De ez mindegy. Az awk-t azért dobtam be, mert a korábbi hozzászólásokban több helyen is problémát okozott a típus. Ennél mindegy.

Több évtizedes rutin alapján kb. 1 M (ennél csöppet bonyolultabb szerkezetű) sor feldolgozására tartom az awk-t alkalmasnak. Felette C kell, ami legalább 6x gyorsabb.

Az awk programra zeller megoldása a legegyszerűbb Ezzel a futásidő 69s, 44 M sor lottószám szerű (609 MB) adaton. A vázolt C program-hoz hasonló megoldás futásideje 0,784 s, azaz 88x gyorsabb. Innentől teljesen felesleges azon vitatkozni, hogy melyik interpreteres és típusos nyelv a gyorsabb, mert itt csak bájtok vannak.

Bár elismerem, hogy ez a megoldás nem csak szakmaiatlan, de ronda is.