( uid_21365 | 2020. 11. 09., h – 06:07 )

Hm, köszi, sokat segítettél...

Annyi bizonyos, a math könyvtárba nem fogok belerakni stringgel kapcsolatos dolgokat, egy darabot se. Tudniillik, nincs szükség rá hogy oda kerüljön a szám stringgé alakítása vagy string számmá alakítása, s azért nem, mert ezek a "standard" könyvtár részei. És azért abba kerülnek (kerültek, már benne vannak) mert a string - mint említettem fentebb - a nyelvemben egy ELEMi típus. Alapból támogava van, mert minden erre épül benne, már a parser illetve tokenizáló rész is ezt a string „osztályt” használja. Eképp, minthogy a standard lib részei az elemi műveletek, mint az összeadás, kivonás stb, ezek ott értelmezve vannak a stringekre is - bár néha furcsán. Az összeadás stringek esetén konkatenálást jelent - ez számos nyelvben így van - ellenben a -- azaz mínuszmínusz postfix operátor például eggyel csökkenti jobbról a string hosszát. Ezt az imént oldottam meg így, jobban tetszik mintha valami bonyolult angol nevet kéne kitalálni erre a funkcióra.

Igenám, de nem akarok mégse minden stringműveletet belegyömöszölni a +standard" könyvtárba. Azokat amiket rá lehet aggatni a megszokott aritmetikai szimbólumokra, azokat igen. A többit azonban nem, ezért kell külön az str könyvtár.

De, amit írtál felosztást, az nagyrészt mégis tetszik nekem. Ha azonban említetted hogy mi a nyelv célja, nos, NEM TUDOM (igazából az egyetlen célja az hogy LEGYEN egy olyan nyelv amit én alkottam, s így nincs szerzői jogi probléma ha szerepeltetem valamelyik regényemben...), de abban azért biztos vagyok hogy miután szkriptnyelv, így messze többször lesz használva stringmanipulációs célokra, beleértve stringtömbökkel való munkát is, mint matematikai feladatokra. Ez annyira így van hogy távlati célom egy text editort írni benne, az meg nyilvánvalóan stringmanipulációs (és terminálos) feladat ugyebár.

Mindegy, a lényeg hogy nagyrészt azért tetszik az általad javasolt felosztás. Például tetszik, hogy ne dir könyvtár legyen hanem "io", Itt nálam már éjfél van, de holnap ennek megfelelően módosítom a dolgokat.

De akkor pár további kérdés.

—Érdemes-e szerinted egy külön "shared" libet is kreálni, amiben a shared memory kezelésének függvényei vannak benne, vagy ez a core része legyen?

—Hova kerüljön a fork() funkció? (meg minden más ami ezzel kapcsolatos). Szimpatizálok például azzal hogy a core része legyen, így a nyelvem alapból támogatná a többszálúság ezen módját, de akkor a core része kell legyen a sharedmemoryval kapcsolatos minden is, mert a fork után a parent és a child process egymással csakis a shared memory szegmenseken át tud kapcsolatot tartani... Netán épp emiatt egyik se legyen a core része, de kerüljenek egyetlen közös libbe? Ha igen mi legyen annak a libnek a neve?

—Aztán, van olyan funkcióm is hopgy kioírni egy stringet a grafikus képernyő (az ablakkezelő) statusbar-jára. Logikusan ez az X nevű libbe kerülne ugye. Igenám, de van olyan függvényemis ami beolvas egy png képet egy stringbe, s olyan is ami aztán e stringet kiírja a grafikus képernyőre, persze kép formájában. Meg olyan is van ami egy ilyen "képstringet" kiír egy (png) fájlba. Most ezek akkor az io libbe kerüljenek, vagy az X libbe (hiszen grafikus képernyőre rajzolnak ki) vagy legyen egy külön png lib? Utóbbi logikusabbnak tűnhet, de mindjárt másképp tűnik ha belegondolok, arra is van funkcióm hogy a grafikus ablak tartalmát elmentsem png képként. Ez most akkor X funkciónak van tekintve vagy png funkciónak?

Na befejezem, megyek aludni (egyelőre...). Köszi az eddigi segítséget! Bár mindenki ilyen rendes, lényegre törő és segítőkész volna mint te!