"Agena" yra atvirojo šaltinio, nemokama, daugialypė platforma ir lengvai išmokiama procedūrinė programavimo kalba, skirta kasdieniam naudojimui. Jis gali būti naudojamas grafinėse, mokslinėse, kalbinėse ir edukacinėse aplinkose, taip pat ir scenarijų programose, palaikančiose visas pagrindines operacines sistemas.
Siūlo daugybę srauto kontrolės įrenginių
Programa siūlo daugybę srauto valdymo įrenginių, pvz., jei. Elifas, kitomis sąlygomis, atveju ir kitomis sąlygomis, yra operatorius, skaitinis, iš, į ir, pagal kilpas, bendras skaitinis ir už kilpų, už ir į kilpų, o ir kaip / kaip kilpos, praleisti pareiškimą, pertrauka teiginys, taip pat duomenų tipo patvirtinimas.
Pateikia skaičiavimų užduotis
Be kitų funkcijų, galime paminėti savavališką tikslumo matematinę biblioteką, lengvą jūsų asmeninės aplinkos konfigūraciją, paprastą naudoti paketų sistemą, skaičiavimo užduotis, taikymo sritį per epocs / apimties raktinius žodžius ir daug kitų patrauklių funkcijų.
Pagal gaubtą ir prieinamumą
Greitas ieškojimas po gaubtu parodys mums, kad projektas yra parašytas C, BASIC, Lua ir ALGOL 68 programavimo kalbomis, o tai reiškia, kad jo sintaksė primena šių projektų sintaksę. Jis veikia visiškai konsolės / terminalo aplinkoje, o tai reiškia, kad jame nėra grafinės vartotojo sąsajos (GUI).
Laivai su paprastu redaktoriumi
Nepaisant to, kad "Agena" programinė įranga yra komandinės eilutės programa, ji tiekia paprastą grafinę grafinę programinę įrangą, vadinamą "AgenaEdit", kurioje yra integruota "Agena" aplinka ir sintaksės išryškinimo galimybės. Labai įkvėptas panašus redaktorius, kurį sukūrė Bill Spitzak, "FLTK Cross-Platform C + + GUI toolkit".
Dirba Aviečių Pi
"Agena" grafiniai pajėgumai palaikomi "GNU / Linux", "Solaris", "Mac OS X", "Microsoft Windows", "eComStation" - "OS / 2" ir "DOS" operacinėse sistemose. Jis gali būti lengvai įdiegta tiek 64 bitų ir 32 bitų platformų, ir buvo sėkmingai išbandytas ant rankos pagrindu Aviečių Pi kompiuterio plokštės.
Kas naujo šis leidimas:
- nauja funkcija skaičiavimo ir statistikos
Kas naujo versijoje:
- nauja funkcija skaičiavimo ir statistikos
- nauja funkcija "skaičiavimas ir statistika"
- nauja funkcija skaičiavimo ir statistikos
- nauja funkcija "Apskaičiavimas ir statistika"
- dabar "stats.chauvenet" apatinę ar viršutinę ribą, atitinkamai perduodama parinktis "outlier =" lower "" arba "outlier =" upper'`.
- "bags.remove" sukėlė segmentavimo sutrikimus. Tai buvo ištaisyta. Be to, visos "krepšio" funkcijos, įdiegtos C, buvo iš esmės pakeistos.
- "+", "-" ir "*" metodiniai metodai neveikė, jei "maišelių" paketas nebuvo naudojamas su "su" funkcija arba "importavimo / slapyvardžio" pareiškimu. Tai buvo ištaisyta.
- Dabar "stats.chauvenet" dabar gali tikrinti mažesnių ar viršutinių ribų, atitinkamai praleidžiant parinktį 'outlier =' lower'` arba 'outlier =' upper'`.
- "bags.remove" sukėlė segmentavimo sutrikimus. Tai buvo ištaisyta. Be to, visos "krepšio" funkcijos, įdiegtos C, buvo iš esmės pakeistos.
- "+", "-" ir "*" metodiniai metodai neveikė, jei "maišelių" paketas nebuvo naudojamas su "su" funkcija arba "importavimo / slapyvardžio" pareiškimu. Tai buvo ištaisyta.
- "stats.chauvenet" apatinę ar viršutinę ribą, atitinkamai perduodama parinktis "outlier =" lower "" arba "outlier =" upper'`.
- "bags.remove" sukėlė segmentavimo sutrikimus. Tai buvo ištaisyta. Be to, visos "krepšio" funkcijos, įdiegtos C, buvo iš esmės pakeistos.
- "+", "-" ir "*" metodiniai metodai neveikė, jei "maišelių" paketas nebuvo naudojamas su "su" funkcija arba "importavimo / slapyvardžio" pareiškimu. Tai buvo ištaisyta.
- "stats.chauvenet" dabar gali tikrinti būtent žemesnius ar viršutinius viršutinius ribų, atitinkamai praleidžiant parinktį "outlier =" lower "" arba "outlier =" upper'`.
- "bags.remove" sukėlė segmentavimo sutrikimus. Tai buvo ištaisyta. Be to, visos "krepšio" funkcijos, įdiegtos C, buvo iš esmės pakeistos.
- "+", "-" ir "*" metodiniai metodai neveikė, jei "maišelių" paketas nebuvo naudojamas su "su" funkcija arba "importavimo / slapyvardžio" pareiškimu. Tai buvo ištaisyta.
- Skaitmeniniai "for` "kilpai dabar palaiko raktinį žodį" downto ", kad galėtumėte suskaičiuoti, nenaudodami privalomo neigiamo" iki "žingsnio dydžio. Kontekste "žemyn" "žingsnis po žingsnio" visada turi būti teigiamas. "nuo" pradžios ir "iki" sustojimo vertės yra privalomos, kai naudojamas raktinis žodis "žemyn".
- metametologijos "__pinigas", "__entier" ir "__sqrt" nebepalaikomi. Vietoj to buvo pridėta trys nauji struktūros operacijų metadodai: "__union" sąjungos operacijoms, "__interersect", norint nustatyti sankryžus ir "__minus" skirtumams. Taigi, "krepšelių" paketas dabar taip pat palaiko šias tris operacijas.
- "Integer" padalinio operatorius nepalaiko jo metodo ir naudojo jį plūduriuojančiam daliniui (`/` operatoriui). Tai buvo ištaisyta.
- Nauja funkcija "stats.gini" nustato Gini koeficientą, lygį (in-).
- Nauja funkcija `stats.zscore` grąžina pavyzdį z-score (standartinis balas) apskaičiuojančią funkciją - standartinių nukrypimų skaičius, kurio pavyzdys yra didesnis arba mažesnis nei platinimo vidurkis.
- "stats.sorted" dabar pagal nutylėjimą naudoja Introsort algoritmą vietoj Quicksort. Tai gali paspartinti skaičiavimo laiką tris kartus blogai sąlygomis (kai "Quicksort" reikės O (n ^ 2) operacijų), tuo pačiu neprarandant našumo įprastomis situacijomis. Iš tikrųjų, "Introsort" pagal numatytuosius nustatymus naudoja "Quicksort" ir automatiškai persijungia į "Heapsort", jei rekursijos gylis pasiekia 2 * log (n, 2), kur n yra elementų skaičius struktūroje.
- Galite ignoruoti šią logiką, praleidžiant naują variantą "quicksort", kuris naudoja tik tradicinį rekursinį Quicksort metodą, kad rūšiuoti numerius. Be to, "stats.sorted" dabar taip pat gali naudoti "Heapsort" algoritmą tik tuo atveju, jei perduodama nauja galimybė "heapsort", ir nereikalingas Quicksort algoritmas, sukurtas Niklaus Wirth su nauju pasirinkimu "nrquicksort".
- Nauja funkcija `stats.meanmed` grąžina tiek pasiskirstymo aritmetinį vidurkį, tiek vidutinį, arba vidutinį ir vidutinį koeficientą, pagreitinant skaičiavimo laiką, kai šios vertės yra reikalingos maždaug 20%.
- Pagerino "size" operatoriaus klaidos pranešimą.
- Naujos funkcijos ir pataisymai:
- "try / catch": aiški klaidos keitimo specifikacija iškart po to, kai "catch" ženklas yra neprivalomas. Jei klaidos kintamasis nenurodytas, klaidos pranešimas automatiškai saugomas vietiniame "lasterror" kintamojo ir raktas "then" turi būti išbrauktas:
- & gt; pabandykite
- & gt; klaida ("laukia!")
- & gt; sugauti
- & gt; Spausdinti (lasterror)
- & gt; yrt;
- Oi!
- Bandymų / sugadinimo pareiškimas kartais neveikė procedūrose (nepaskirtas klaidos kintamasis). Tai buvo ištaisyta.
- Naujoji "net.wget" funkcija atsisiunčia HTML puslapius iš žiniatinklio.
- Tuned "skycrane.counter" 10%. Dabar funkcija pasirinktinai taiko Kahan-Ozawa vietoj originalaus Kahan sumavimo algoritmo, jei naujas trečias argumentas yra eilutė "ozawa". Atitinkami C šaltiniai buvo modifikuoti, kad būtų išvengta kompiliatoriaus optimizavimo, kuris taip pat gali atšaukti optimizavimą.
- "argerror" dabar spausdina vartotojo klaidos pranešime gautą reikšmę. Jei verte nėra vartotojo apibrėžto tipo, tada jo pagrindinis tipas yra išduotas.
- Nauja "a" parinktis "debug.getinfo" grąžina procedūros metu laukiamų argumentų skaičių, nes Rob Hoelz "LuaPowerPatch".
- Pagerintas eilučių klaidos pranešimas "indekso neatitikimas"
- Modifikuoti failų "stats.agn", "linalg.agn", "library.agn" ir "ansi.agn", atsižvelgiant į klaidų tvarkymą.
- Naujos rūšies klaidų apdorojimo atveju buvo pateiktas naujas "try / catch" teiginys. Jis buvo išrastas ir parašytas Hu Qiwei už Lua 5.1 dar 2008 m.
- Apskritai, bet kokie teiginiai, kuriuose galima tikėtis išimties, gali būti įtrauktos į "try" clause. Jei išduodama klaida, generuojama aiškiu kvietimu į "klaidos" funkciją arba bet kuria kita išraiška, funkcija ar teiginiu, kontrolė iškart perkelia į atitinkamą "catch" clause, jei ji yra, arba "try / yrt" pabaigoje "teiginys, jei nėra" sugavimo "punkto, ignoruojant bet kokius kitus vėlesnius teiginius" clause ".
- Apsaugos / "lasterror" klaidų šalinimo įrenginiai vis dar yra ir visada bus palaikomi. Nauja kontrolės ataskaita taip pat veikia nepraleidžiant "break", "skip", "redo" ir "return" pareiškimų.
- Naujas "redo" teiginys iš naujo paleidžia dabartinę "for / in" ir "for / in" pradžios iteraciją.
- Naujasis "recip" operatorius grąžina atvirkštinį skaičių x. Tai atitinka raišką 1 / x, bet greičiau.
- Nauja funkcija `stats.ema` apskaičiuoja eksponentinį skirstinio vidurkį. Nauja funkcija `stats.gema` grąžina iteratoriaus funkciją, grąžinančią atitinkamą eksponentišką paskirstymo vidurkį.
- `*%`, `+%` ir `-%` grąžino `undefined ', o ne teisingą rezultatą, jei jų dešinysis operandas buvo lygus nuliui. Tai buvo ištaisyta.
- Ištaisytas klaidos pranešimas "net.survey".
- Patobulinti klaidų pranešimai, kai nerodomas porų ir stygų indeksavimas.
- ANSI, Solaris ir DOS versijose buvo sureguliuotas "int" operatorius.
- Nauja C API funkcija `agn_arraytoseq` paverčia skaičių masyvą į seka ir stumia šią naują eilutę stos viršuje.
- Atnaujinta instrukcija.
- Naujas "redo" išrašas iš naujo paleidžia dabartinę "for / to" ir "for / in" kilpos iteraciją iš pradžių. Pavyzdys:
- & gt; flag: = true; & gt; j [10, 11, 12] daro & gt; spausdinti ("prieš", "j", vėliava); & gt; jei vėliava ir j = 11 tada> išvalyti vėliavą; & gt; Spausdinti ('->, j, vėliava,' šokinėti atgal ') & gt; redo & gt; fi; & gt; spausdinti ("po", "j", vėliava) & gt; kol j & gt; 12; prieš 10 teisingą po 10 teisingumo iki 11 true - & gt; 11 klaidingas šuolis atgal prieš 11 klaidingas po 11 klaidingas iki 12 klaidingas po 12 klaidingų
- Naujasis "recip" operatorius grąžina atvirkštinį skaičių x. Tai atitinka raišką 1 / x, bet greičiau.
- Nauja funkcija "stats.ema" apskaičiuoja eksponentinį paskirstymo vidurkį. Nauja funkcija `stats.gema` grąžina iteratoriaus funkciją, grąžinančią atitinkamą eksponentišką paskirstymo vidurkį. Dėl jo naudojimo, prašome perskaityti src / stats.c šaltinio failą, C funkcijas * ema.
- `*%`, `+%` ir `-%` grąžino `undefined ', o ne teisingą rezultatą, jei jų dešinysis operandas buvo lygus nuliui. Tai buvo ištaisyta.
- Ištaisytas klaidos pranešimas "net.survey".
- Naujoji C API funkcija `agn_arraytoseq` paverčia skaitinę masyvą į seka ir stumia šią naują eilutę stos viršuje.
- Nauji pareiškimai ir funkcijos:
- "Agena 2.0" yra suderinamas su "Agena 1.12" žemyn, išskyrus tai, kad žetonai "importo", "alias", "iki" ir "onsuccess" dabar yra raktiniai žodžiai ir daugiau nebegalima naudoti kaip kintamieji. Šiuo metu 2.0 versijoje yra "Solaris", "Debian" (x86, "PowerPC", "Raspberry Pi"), "Windows", "Mac" ir "DOS" diegimo programos, įskaitant atnaujintą "Primer" ir "Reference", kuriuose išsamiai paaiškinamos visos naujos funkcijos.
- Naujų raktų variantai `for / as 'ir` for / until` patikrina būklę dabartinės iteracijos pabaigoje ir pradeda kitą iteraciją arba palieka kilpą. Tai veikia tiek "už /", tiek "for / in" kilpos. Iš esmės abu variantai atlieka kilpą bent kartą, kol tikrinama nurodyta sąlyga.
- Pavyzdžiai:
- & gt; už i-5 do
- & gt; Spausdinti (i)
- & gt; kaip i & lt; 3
- & gt; už i [1, 2, 3, 4, 5] do
- & gt; Spausdinti (i)
- & gt; kol i & gt; = 3
- Naujoji "do / until` cikla pasikartojanti tol, kol bus įvykdyta tam tikra sąlyga:
- & gt; c: = 0;
- & gt; padaryti
- & gt; Inc c;
- & gt; Spausdinti (c)
- & gt; kol c & gt; = 3
- Skaičiuojant "for", ciklas "for", "clause" į "clause" negali būti daugiau. Vietoj to, išbraukiant iš "clause" į "clause", ciklas pasikartoja, kol pasiekiamas didžiausias skaičius jūsų platformoje, C HUGE_VAL.
- & gt; nes aš
- & gt; Spausdinti (i)
- & gt; od
- Naujoji "onsuccess" sąlyga "if" ir "case" pareiškimai vykdo fragmentą, jei bent viena iš sąlygų yra teisinga. Pavyzdžiai:
- & gt; flag: = false;
- & gt; jei 1 = 0 tada
- & gt; Spausdinti (0)
- & gt; elif 1 = 1 tada
- & gt; Spausdinti (1)
- & gt; sėkmė
- & gt; flag: = true
- & gt; dar
- & gt; Spausdinti (-1)
- & gt; fi;
- & gt; spausdinti (vėliava);
- tiesa
- & gt; flag: = false;
- & gt; jei 1 = 0 tada
- & gt; Spausdinti (0)
- & gt; elif 1 = 0 tada
- & gt; Spausdinti (1)
- & gt; sėkmė
- & gt; flag: = true
- & gt; dar
- & gt; Spausdinti (-1)
- & gt; fi;
- & gt; spausdinti (vėliava);
- klaidingas
- & gt; flag: = false;
- & gt; a: = 2;
- & gt; atvejis
- & gt; iš 1 tada
- & gt; Spausdinti (1)
- & gt; iš 2 tada
- & gt; Spausdinti (2)
- & gt; sėkmė
- & gt; flag: = true
- & gt; dar
- & gt; Spausdinti (-1)
- & gt; esac;
- & gt; spausdinti (vėliava);
- tiesa
- Naujas "importo" teiginys leidžia importuoti vieną ar daugiau bibliotekų, nenukreipdamas jų pavadinimų į kabutes, pvz. "Import calc, stats" yra lygiavertis "readlib (" calc "," stats ").
- Parametras "importo" pasirinkimui "alias" priskiria vieną ar kelis trumpus vardus į pradines bibliotekos funkcijas, pvz., "importo skaičiavimo slapyvardis xpdiff" atitinka "(" calc "," xpdiff ") ir" importo skaičiavimo slapyvardis "yra lygiavertis" with ("calc").
- Naujasis ".." operatorius leidžia indeksuoti lenteles, net jei jo kairioji operando vertė yra "null". Tokiu atveju grąžinamas `null` ir nėra" bandymo indeksuoti lauką ... (null value) "klaida. Tai panaši į "getentry" funkciją, bet yra tris kartus greičiau. Pavyzdžiai:
- & gt; sukurti lentelę a;
- & gt; a.b:
- null
- & gt; a.b.c:
- Klaida stdin, eilutėje 1:
- pabandykite indeksuoti lauką `b` (nulinė vertė)
- & gt; a..b..c:
- null
- & gt; sukurti lentelę a;
- & gt; a [1]:
- null
- & gt; a [1] [2]:
- Klaida stdin, eilutėje 1:
- pabandykite indeksuoti lauką `? '(null value)
- & gt; a .. [1] .. [2]:
- null
- Nauja funkcija `drem` įvertina likusį sveikojo skaičiaus suskirstymo x / y reikšmę, bet priešingai nei` irem`, vidinis koeficientas x / y nukreipiamas į artimiausią sveikąjį skaičių, o ne į nulį.
- Nauja funkcija `skycrane.todate` grąžina dabartinę datą ir laiką kaip formuotą eilutę.
- Nauja funkcija `io.truncate` trunka failą dabartinės failo pozicijoje.
- Naujoji funkcija "io.move" keičia failo poziciją tam tikru simbolių skaičiumi į kairę arba į dešinę.
- Nauja funkcija `io.filesize` grąžina failo dydį.
- "readlib" dabar priima tik eilutes kaip jos argumentus. Skaičiai nebeleidžiami.
- Jei paskutinis argumentas "su" yra Būlio "klaidingas", tai funkcija nesudaro konsolėje (stdout) priskirtų trumpų pavadinimų.
- "strings.fields" dabar taip pat priima indeksų skaičių seka. Vis dėlto jis nebegali laikytis indekso "0".
- Raspberry Pi Wheezy "Debian" diegimo programa dabar apima "gdi" grafikos paketą.
- Failas `change.log` dabar tinkamai rodomas sistemoje Windows.
- Naujų raktų variantai `for / as 'ir` for / until` patikrina būklę dabartinės iteracijos pabaigoje ir pradeda kitą iteraciją arba palieka kilpą. Tai veikia tiek su /, tiek su / in kilpomis.
- Naujų raktų variantai `for / as 'ir` for / until` patikrina būklę dabartinės iteracijos pabaigoje ir arba pradeda kitą iteraciją arba palieka kilpą. Tai veikia tiek su /, tiek su / in kilpomis.
- Naujas "importo" teiginys leidžia importuoti vieną ar daugiau bibliotekų, nenukreipdamas jų pavadinimų į kabutes, pvz. "Import calc, stats" yra lygiavertis "readlib (" calc "," stats ").
- Parametras "importo" pasirinkimui "alias" priskiria vieną ar kelis trumpus vardus į pradines bibliotekos funkcijas, pvz., "importo skaičiavimo slapyvardis xpdiff" atitinka "(" calc "," xpdiff ") ir" importo skaičiavimo slapyvardis "yra lygiavertis" with ("calc").
- Naujasis ".." operatorius leidžia indeksuoti lenteles, net jei jo kairioji operando vertė yra "null". Tokiu atveju grąžinamas `null` ir nėra" bandymo indeksuoti lauką ... (null value) "klaida. Tai panaši į "getentry" funkciją, bet tris kartus greičiau.
- Naujos funkcijos "io.getclip" ir "io.putclip" keičia tekstus tarp "Agena" ir iškarpinės (tik "Windows").
- "stats.prange" buvo perrašytas C ir jis pasiekė 60% greičiau.
- "os.cpuinfo" dabar grąžina teisingą ir daugiau informacijos apie ARM pagrįstas sistemas.
- "DOS" ir "UNIX" sistemose, įskaitant "Mac OS X" ir tik sudėtingame domene, bazės 0 pasipriešinimas eksponentui 0 + r * I, o r bet koks nulinis plūduras, grąžinamas "neapibrėžtas" vietoj 0. Tai buvo ištaisyta.
- DOS ir UNIX sistemose, įskaitant "Mac OS X" ir tik sudėtingame domene, bazės 0 pasipriešinimas rodikliui r + 0 * I, o r bet koks teigiamas plūduras, grąžinamas "undefined" vietoj 0. Tai buvo buvo nustatytas.
- "stats.obcount" ir "stats.obpart" negalėjo įtraukti verčių į dešinįjį subintervalą. Tai buvo ištaisyta.
- "calc.nakspline", "calc.naksplinecoeffs", "calc_clampedspline" ir "calc_clampedsplinecoeffs" išprovokuoti segmentavimo sutrikimai, jei skambinama naudojant struktūrą, kurioje yra per mažai taškų, t. y. poros. Tai buvo nustatyta, grąžinant "nesėkmę" šiais atvejais.
- Potencialios atminties šalinimo klaidos buvo pašalintos iš "calc.neville", "calc.interp", "calc.newtoncoeffs", "calc.naksplinecoeffs", "calc.clampedsplinecoeffs", "calc.nakspline", "calc.nakspline" ir "calc.clampedspline".
- Nauja C API funkcija `agn_checkinteger` patikrina, ar argumentas yra skaičius ir sveikasis skaičius, ir priešingai nei` luaL_checkinteger`, kitu atveju pateikia klaidą.
- Nauja funkcija "alternate" grąžina savo pirmąjį argumentą, jei jo antrasis argumentas yra "null". Priešingu atveju jis grąžina antrą argumentą.
- "-b" perjungimas į "Agena" vykdomąjį failą buvo pašalintas, nes jo išvestis buvo tokia pati kaip parinktis -v.
- "strings.utf8size" "Windows" ir "UNIX / Mac" versijose buvo potencialus atminties nutekėjimas; tai buvo pakeista.
- Visi dvejetainės bibliotekos DLL ir SO nebegali naudoti neišnaudoto kodo, todėl jų dydžiai gali būti sumažinti iki 10 procentų, priklausomai nuo operacinės sistemos. Anksčiau importuoti nepanaudoti antraščių failai pakeista maketuode ir šaltiniais. Pvz., Tai iš esmės sumažina "Windows" dvejetainių formatų dydį 55 kBie.
- Išplėstas bandymo rinkinys.
- Atnaujinta programos failai.
- Naujos funkcijos ir funkcijos:
- Nauja funkcija `checktype` nustato, ar visos struktūros vertės yra tam tikro tipo.
- Nauja funkcija "isint" patikrina, ar visi jo argumentai yra sveiki skaičiai.
- Nauja funkcija `strings.dleven` grąžina Damerau-Levenshtein atstumą tarp dviejų eilučių.
- Nauja funkcija "stats.ad" nustato absoliučią bet kokių struktūros verčių nuokrypį.
- Naujoji funkcija "stats.countentries" skaičiuoja visų elemento struktūros atsiradimo skaičių.
- Nauja funkcija `stats.deltalist` grąžina atitinkamų kaimyninių elementų deltų struktūrą.
- Nauja funkcija `stats.gmean` grąžina struktūros geometrinį vidurkį.
- Nauja funkcija `stats.hmean` grąžina struktūros harmonikų reikšmę.
- Nauja funkcija `stats.ios` grąžina įrodytą stabilumo rodiklį paskirstyme.
- Nauja funkcija `stats.iqr` grąžina interquartile intervalą
- Nauja funkcija "stats.issorted" patikrina, ar visi skaičiai struktūroje yra rūšiuojami didėjančia tvarka.
- Nauja funkcija "stats.moment" apskaičiuoja duomenis apie kilmę.
- Nauja funkcija `stats.numbperm` grąžina permutacijų skaičių.
- Naujoji funkcija `stats.percentile` nustato procentus.
- Naujoji funkcija "stats.scewness" grąžina skewness, simboliškumo tikimybės pasiskirstymo rodiklį.
- Nauja funkcija "stats.sumdata" apibendrina visas struktūros galias apie kilmę.
- "stats.tovals" dabar yra C bibliotekos funkcija, taigi ji yra iki 40 proc. spartesnė.
- Tuščia lentelė ar seka: "stats.qmean", "stats.mean", "stats.gmean", "stats.sd", "stats.median",
- "stats.var" dabar grįžti nepavyks.
- Maksimalus įvesties linijos ilgis savarankiškame vertėjo vertime pakeistas nuo 512 iki 2048 ženklų.
- Naujas aplinkos kintamasis "environ.maxpathlength" saugo maksimalų failo maršruto simbolių skaičių (išskyrus C simbolį).
- Nauji aplinkos kintamieji "environ.minnumber" ir "environ.maxnumber" turi minimalią ir maksimalią reikšmę. Agenos numeris (šiuo metu yra ANSI-C dvigubas) gali būti saugomas.
- Naujas aplinkos kintamasis "environ.umaxlong" apima didžiausią integruotą C tipo nepasirašytos ilgos 32 + bitų sistemos reikšmę ir ilgai nesignuotų 16bit mašinų.
- C API:
- "Agena C" API 100% suderinamumas su "Lua C" API buvo atkurtas įdiegiant "Lua" * iškrovimo funkcijas. Taigi jūs dabar galite išsaugoti funkcijas dvejetainėje reprezentacijoje, pvz., naudojant "strings.dump" arba lua_dump C lygiu.
- Įvedė naują funkciją "agnL_optboolean", kad patikrintume pasirinktinius Būlio argumentus ir grąžintų juos sėkmės atveju.
- Klaidų pataisymai:
- "environ.globals" visada baigiasi klaida, tai buvo ištaisyta.
- "Prielaida" grąžino klaidingą, nes abu jo argumentai yra "neapibrėžti". Šiuo atveju dabar grįžta tiesa.
- "Agena" sudužo, praleidžiant tuščią lentelę, ir "prisijungti" - tai buvo ištaisyta.
- Pasirinkimą `color 'daugiau ignoruoja` gdi.plot`.
- Lentelėse "stats.minmax" grąžino klaidingą minimalią vertę. Dabar jis veikia teisingai.
- Tuščią lentelę "stats.median" grąžino 0, dabar ji sugrįžta nesėkmingai.
- Priešingai nei dokumentacija, "strings.isending" grąžino "true", kai abi eilutės yra lygios. Tai buvo ištaisyta.
- paleisti `grąžino` negalėjo atidaryti failo ', jei esamas Agena scenarijus įtraukė sintaksės klaidą. Tai buvo ištaisyta visiškai perrašant funkciją.
- Pridėta Lua 5.1.4 9 pataisos: "Klaidingas kodo generavimas tam tikroms [pvz. sudėtingoms] loginėms išraiškoms."
- Pridėta "Lua 5.1.4" 11 pataisos: "Parseris gali surinkti prototipą pastato metu".
- * Info: Įtraukus Lua 5.1.4 10 pataisą, "[__write / __naujas] indekso metodas gali neveikti, jei metatable yra jo meta tikslus", "Agena" nėra būtina, nes šiuo atveju "Agena" šiuo metu tinkamai veikia.
- Pašalintas nepanaudotas raktinis žodis "numatytasis".
- Kai kurių funkcijų ir funkcijų griežėjimas.
- Priedai:
- Pridėjo "io.anykey" _experimental_ versiją į "Mac" versiją. Tačiau mažiausiai ant Liūto, kai kartais paspaudžiamas raktas yra pakartotas ant apvalkalo.
- "utils.readcsv" dabar gali pasirinktinai grąžinti visas vertes CSV faile plokščią seka.
- "Clock" paketas dabar palaiko dalijimo operatorių "/", pridedant jį į savo "metro" operatoriaus "tm".
- Keisti elgesį su `, nes jis negalėjo priskirti trumpų pavadinimų daugeliui bibliotekų funkcijų: jei funkcijos buvo įtrauktos į .aux lentelę, nesuteikite trumpų šių funkcijų pavadinimų pavadinimų; kitaip priskirti trumpus _all_ kitų paketų funkcijų pavadinimus. Taigi: "package.register", norint registruoti visas bibliotekos funkcijas "su" priskirti trumpus pavadinimus, jau nebėra reikalingas. Jis nebus taikomas vienoje iš šių leidimų.
- Pagerino testų rinkinį.
- Manual:
- Pagerėjote vadovą ir rodyklę.
- Nuoseklumas:
- Visiems toliau nurodytiems pervadinimams toliau palaikomi šie seni kintamųjų vardai.
- "environ.MinLong" buvo pervadintas į "environ.minlong".
- "environ.MaxLong" buvo pervadintas į "environ.maxlong".
- "environ.BufferSize" buvo pervadintas į "environ.buffersize".
- "environ.PathSep" buvo pervadintas į "environ.pathsep".
- "environ.More" buvo pervadintas į "environ.more".
- "environ.WithProtected" buvo pervadintas į "environ.withprotected".
- "environ.Os" buvo pervadintas į "environ.os".
- "environ.Cpu" buvo pervadintas į "environ.cpu".
- "environ.Release" buvo pervadintas į "environ.release".
- "environ.GdiDefaultOptions" buvo pervadintas į "environ.gdidefaultoptions".
- "Windows" sistemoje "os.login" ir "os.computername" dabar grįžta "nepavyksta", kaip ir "UNIX" arba "OS / 2" versijos.
- Išjungtas "-DCOMPAT13" jungiklis buvo sudarytas Agena 1.3.x papildomos versijos.
- kitas:
- Neteisėtas "calc.fseq" ištrintas. Prašau naudoti "nseq"
- Pataisytos "strings.fields", kuri visai neveikė. Be to, jis buvo konvertuotas į C bibliotekos funkciją ir yra 2,6 karto spartesnis.
- "strings.words" dabar pritaria trečiam argumentui, jei jis nustatytas kaip "true", tolesni apribojimai nepaisomi.
- Iš "io.write" ir "io.writeline" šalino galimą saugumo nutekėjimą ir patobulino klaidų pranešimus.
- Pataisytas "binio.readchar", kad būtų išvengta problemų, kai failai didesni nei 2 GB.
- Ištaisyti "xbase.purge", `xbase.readvalue`,` xbase.purge`, `ads.getvalues`,` binio.readshortstring`, `os.computername`,` os.login`, klaidų pranešimai `os.fattrib`,` environ.kernel`, `package.register`.
- Terabaitų dabar galima įrašyti su užrašu T, kur yra sveikasis skaičius, o T simbolis `T`. Panašiai g žymi milijardus ir trilijonus. Daugiau informacijos rasite vadovo 48 puslapyje.
- Atnaujinta instrukcija.
- Iš esmės kodo valymo priežastys pašalinamos iš esmės viso atgalinio suderinamumo C kodo kodo. Tai įtakoja tik tuos, kurie bando perkompiluoti Agena 1.5 ar naujesnę versiją su visišku atgaliniu suderinamumu su "Agena 1.3" ir 1.4 versijomis, o dauguma atgalinio suderinamumo su "Lua 5.0" (išskyrus seną "Lua 5.0" bibliotekos tvarkymą).
- "map" dabar taip pat gali apdoroti stygas, pateiktas kaip antrasis argumentas. Atitinkama funkcija ir jos argumentai yra nuosekliai taikomi kiekvienam simboliui iš kairės į dešinę, o rezultatas grąžinamas nuosekliai.
- paleisti: jei norite įkelti ir vykdyti kodą iš failų su "agn" priesaga, ilgiau nereikia nurodyti argumento priesagos. Taigi paleisti "test" ir "paleisti" test.agn'` dabar yra tokie patys.
- Raktinių žodžių "yra" yra privaloma apibrėžti procedūras. (Naudodamiesi GCC naudokite jungiklį -DCOMPAT14, kad sukurtumėte "Agena" versiją, kur raktas "is" vis dar neprivalomas.)
- "try '" teiginys nebeaktualus ir nebepalaikomas. (Su GCC naudokite jungiklį -DCOMPAT14, kad sukurtumėte "Agena" versiją, kurioje vis dar yra šis teiginys.)
- Ištrintos šios "utils" funkcijos: "arraysize", "getarray", "getwholearray", "newarray", "searcharray", "setarray". Norėdami sugrįžti, jie buvo įtraukti į failą lib / compat.agn. (Naudodamiesi GCC naudokite jungiklį -DCOMPAT14, kad sudarytumėte Agena versiją, kuri vis dar palaiko originalias utils funkcijas.)
- "utils.singlesubs" buvo visiškai perrašytas. Dabar jis numato skaičių seką kaip antrą argumentą, o ne buvusį stringarray vartotojo duomenų struktūrą. Tai yra 35% lėtesnė nei ankstesnė versija, tačiau svarbiausia buvo pašalinti strijų struktūrą.
- `strings.include` nukrito, jei jis buvo pakviestas su 0 kaip antruoju argumentu. Tai buvo ištaisyta.
- Taikomas Michael G. Schwern 2011 m. gegužės 10 d. paketas "32 bitų metų 2038-Fix" datos pagalbinėms funkcijoms, kurias naudoja "os" ir "xbase" paketai ("Padaryti mktime64 () ištaisyti gaunamus tm struct kaip reikalaujama ISO C ")
- Vidinio kodo optimizavimas: kai kurios bibliotekos inicializavimas ir failų įkėlimas C funkcijos naudojo statą, kad būtų galima kurti kelias ir failų pavadinimų eilutes. Naujoji "Caux" funkcija "concat", kurią parašė Solar Designer, dabar daugeliu atvejų naudojama.
- Agena C API dabar yra 100% suderinamas su Lua C API, kad būtų lengviau nukopijuoti "C" Lua paketus "Agena".
- Taigi šios funkcijos buvo pervadintos: lua_isnumber - & gt; agn_isnumber, lua_isstring - & gt; agn_isstring, luaL_optnumber - & gt; agnL_optnumber, luaL_checknumber - & gt; agnL_checknumber, luaL_optnumber - & gt; agnL_optnumber, luaL_checkinteger - & gt; agnL_checkinteger, luaL_optinteger - & gt; agnL_optinteger.
- Pervardyti šie makrokomandai: luaL_checkint - & gt; agnL_checkint, luaL_optint - & gt; agnL_optint.
- Priešingai nei ankstesnis Agena įgyvendinimas, lua_tonumber dabar grąžina 0, kaip ir Lua, tuo atveju, jei buvo perkeltas ne skaitmuo, o ne grąžinti HUGE_VAL.
- lua_setglobal2 buvo pašalintas. Vietoje to naudokite lua_pushvalue ir lua_setglobal.
- Jei parametrų sąraše nustatyta procedūros vartotojo apibrėžti tipai buvo
- procedūra ragina ne klaidų buvo išduotas, o procedūra buvo atlikta šiais atvejais:
- a) lentelė, rinkinys, seka, pora ar procedūra - be vartotojo apibrėžtos
- tipas - perduotas,
- b) dėl atitinkamo parametro neatsižvelgta.
- Trumpieji "stats.quartiles" ir "stats.mode" pavadinimai negali būti priskirti funkcijai "su". Tai buvo ištaisyta.
- Klaidingai, "su" negalėjo priskirti trumpo pavadinimo "gdi.settriangle". Tai pakeista.
- "calc.polygen" tvarkymo klaida buvo pagerinta.
- Patobulintas "fractals.draw" klaidos pranešimas trūkstamiems FRACTINT žemėlapio failams.
- Pašalinta neveikia `strings.rseek` funkcija. Norėdami susigrąžinti atgal, "lib / compat.agn" failas buvo pridėtas "strings.seek".
- Pridėjus "-d" jungiklį, norint spausdinti derinimo informaciją vertėjo paleidimo metu.
- Agena "Windows" versija dabar yra sudaryta su GCC 4.5.2.
- Atnaujintos kalbos schemos failai.
- Vadovas atnaujintas.
- Semantiniai pakeitimai:
- Loop'io valdymo kintamieji skaičiaus `for / to` kilpos dabar yra automatiškai vietiniai jų aplinkinių blokams, o ne jų (vidiniai) kilpos kūnai. Jei vietinis kintamasis su tuo pačiu pavadinimu kaip ir linijos valdymo kintamasis buvo paskelbtas ir priskirtas anksčiau
- vykdant skaitinę kilpą, jis perrašomas pagal paskutinę ciklo iteracinę reikšmę. Tokiu atveju "išorinis" skaitmuo "for" ciklas nebepriimamas. (Su GCC naudokite jungiklį -DCOMPAT13, kad sukurtumėte Agena versiją, kuri vis dar atpažįsta, bet ignoruoja "išorinį" raktinį žodį.)
- Kai pastovus `fail ',` not` grąžintas `true`, bet su` fail', priskirtu kintamajam, `not` grąžinamas klaidingai. Tai pakeista, t. Y. "A: = nepavyko; ne (a) "dabar grįžta" "true".
- "stats.median" dabar grąžina "fail" vietoj 0, jei ši struktūra yra tuščia.
- `utils.readcsv`: jei viena parinktis yra perduodama su` delim` parinktimi ir jei parinktis ignorespaces nebuvo suteikta, nebelaikomi automatiškai panaikinti baltieji tarpai, prieš padalijant kiekvieną failo eilutę į jo žodžiai.
- Funkcija taip pat turi dvi naujas parinktis: `header`, žymintis pirmą failo eilutę, ir` output`, leidžianti saugoti failo turinį į žodyną su lauko pavadinimais, apibrėžtais failo antraštėje.
- Substring notation "$" nebėra palaikomas. (Su GCC naudokite jungiklį-DCOMPAT13, kad sukurtumėte "Agena" versiją, kuri vis dar palaiko "$" operatorių.)
- Plėtiniai:
- Buvo pridėta begalinis "do / od" kilpas. Ši ciklo rūšis besikartojanti begalybė ir gali būti nutraukta tik su "break" arba "return" pareiškimais. Jie yra sintaksės cukraus, "nors tiesa darykite ... od" kilpos.
- Lentelėse "stats.minmax" anksčiau dirbo tik su masyvais. Tai buvo pakeista, t. Y. Reikšmės su atitinkamais ne pozityviais raktiniais elementais (pvz., Eilutės, ne pozityviais sveikieji skaičiai, neigiami ir teigiami plūdeliai ir tt) dabar tinkamai pripažįstami vertinime.
- "stats.mean", "stats.qmean", "stats.sd" ir "stats.var" dabar taip pat apdoroja sekas.
- Nauja funkcija `stats.mode` grąžina visas vertes seka arba lentelėje, kurioje yra didžiausias įvykis, t.y. didžiausias dažnis.
- Nauja funkcija `stats.quartiles` grąžina _sorted_ lentelę ar seka pirmąją, antrąją ir trečiąją kvartilius.
- Anksčiau nepateiktos dokumentacijos "linalg.matrix" savybės buvo įtrauktos į vadovą ir jo klaidų tvarkymas buvo patobulintas.
- Geresnis "linalg.hilbert" klaidų tvarkymas.
- `gdi.setinfo` dabar priima` square` parinktį. Jei "square = false", tada x ir y ašys neturės tos pačios skalės skilčių, sukurtų naudojant "gdi.plot".
- Grafikos piešimo funkcija `gdi.plot`, deja, nebuvo dokumentuojama. Tai pakeista.
- `gdi.plot` priima dvi naujas parinktis: parinktis 'x' nurodo horizontalųjį diapazoną, per kurį rodomas brūkšnelis, o parinktis 'y' nurodo vertikalų diapazoną.
- Jei PLOT struktūra perduodama į `gdi.plot`, kurioje yra tik taškai, LINES, RETANGALAI, TRIANGLIAI, CIRCLE ir ELLIPSE (įskaitant jų * PILDYTI variantus), tada` gdi.plot` automatiškai nustato skales (` gdi.setinfo "nebūtinai turi būti vadinamas).
- "Lua" paveldimi OOP funkcijos dabar yra dokumentuojami A9 priedėlyje. Autorius nerekomenduoja objektinio programavimo.
- Tuningas:
- Tuned "užpildytas" operatorius maždaug 3%.
- Tweaked `in`,` join`, `sadd`,` qsadd`, `replace`,` copy`, `unikalus`, ir Cantor nustato operatorius ant lentelių ir nustato šiek tiek.
- Lentelėse "top" ir "bottom" operatoriai dabar yra apie 5% greitesni.
- "size" operatorius yra bent 8% greitesnis, jei lentelėje nėra nieko.
- "linalg.mzip", "linalg.mmul" ir "linalg.transpose" buvo sureguliuoti maždaug 3% kiekvieno.
- Skaitmeninis / ciklas su dalinio žingsnio dydžiais buvo optimizuotas sumažinus jų kontrolinių kintamųjų skaičių per pusę. Tačiau tai nepadidėjo.
- Pataisos:
- Pataisyta "linalg.ludecomp", skirta aptikti sintetines matricas. Be to, funkcija dabar gali automatiškai nustatyti tam tikros matricos tvarką.
- Priešingai nei vadove, "gdi.plot" automatiškai nenustatė horizontalių ir vertikalių diapazonų. Tai buvo ištaisyta.
- `gdi.plot` nepaiso` gdi.setinfo` pasirinktos `square` parinkties.
- "gdi.setinfo" pridėjo nustatymus į INFO struktūras, net jei jie jau buvo. Tai pakeista.
- Gaires "gdi.plot" neteisingai priskyrė ratus. Tai pakeista.
- "gdi.plot" funkcija daugeliu atvejų ignoravo atskirą geometrinių objektų spalvą. Tai pakeista.
- "gdi" paketas nesuteikė trumpų "gdi.settriangle", "gdi.settrianglefilled", "gdi.setrectangle" ir "gdi.setrectanglefilled" pavadinimų. Tai pakeista.
- Fraktalo paketas nesuteikė trumpų naudotojo apibrėžto tipo "esctime" funkcijų trumpų pavadinimų. Tai buvo pakeista. Ištaisytas "fractals.draw" klaidos pranešimas, jei pozicijos argumentai nebuvo numeriai.
- Įvairūs:
- "calc.fseq" funkcionalumas buvo sujungtas į "nseq". Dėl atgalinio suderinamumo "calc.fseq" vis dar yra kalcų paketo dalis, tačiau funkcija iš tikrųjų reiškia "nseq" įdiegimą.
- Pridėjo "fragmentas environ.FractScreenUpdates" į "fractals paketą", kad būtų nurodytas vertikalių linijų skaičius (ne neigiamas sveikasis skaičius), po kurio fraktalas bus atnaujintas lange. "Environ.FractOptimised" kintamasis pasenęs.
- Pagalbinės gdi funkcijos buvo pergrupuojamos.
- Pataisymai į "instr":
- Kada regex režime operatorius grąžino neteisingą rezultatą, jei pradinė pozicija buvo suteikta.
- Kai vykdant paprastą paieškos režimą, operatorius grąžino neteisingą klaidą, jei pradinė padėtis nebuvo pateikta.
- Išskyrus atvirkštinio paieškos režimą, jei nėra atitikimo, pirmasis argumentas buvo grąžintas vietoj "null".
- Ištaisytas klaidos pranešimas apie `create` dėl sekų.
- AgenaEdit, kai išvesdami daugiau nei vieną struktūrą su tik vienu kvietimu į "print", struktūros nebuvo atspausdintos pilnai, jei pirmoji struktūra parodė __tostring metamethod. Tai pakeista.
- Šiame leidime pateikiami klaidų taisymai, plėtiniai ir patobulintas rankinis įrankis:
- "Dimensija" sukūrė įdomių rezultatų, jei struktūra buvo perduota kaip
- inicializatorius. Tai pakeista: "dimensija" dabar sukuria nepriklausomas kopijas
- struktūra, pradedant lentelę.
- "strings.rseek" funkcija buvo įtraukta į "instr" operatorių.
- Taigi, "strings.rseek" nebetinkamas. Dėl atgalinio suderinamumo
- "strings.rseek" buvo pridėtas į failą lib / compat.agn.
- "strings.hits" dabar palaiko reguliarius išraiškos ir fiksuoja. Šis elgesys
- gali būti išjungtas, praleidžiant boolean kaip trečią argumentą.
- `strings.isabbrev` ir` strings.isending` dabar automatiškai naudoja paprastą paiešką
- jei reguliariosios išraiškos ar fiksavimai nebuvo perduoti kaip antroji dalis
- argumentas.
- Tweaked `strings.ismagic` ir` strings.isfloat`.
- Dabar "log" funkcija yra 13% greitesnė.
- Išvesdami daugiau nei vieną struktūrą su tik vienu kvietimu į "print",
- struktūros nebuvo išspausdintos, jei pirmoji struktūra rodoma __tostring
- metodas. Tai pakeista.
- Pridėta funkcijų kategorijų į 7 skyrių, kad būtų lengviau pradėti naujus
- vartotojai.
- Kilo problemų su įdėtais skambučiais į šiuos dvejetainius operatorius: `xor`,` atendof`, `& amp;`, `||`, `^^`, `::` ir `: - `, taigi ir su gražiu spausdintuvu, kuris atmeta klaidą spausdinant įdėtas struktūras. Tai buvo ištaisyta.
- Keturi "os.list" pataisymai: jei pasirinkta "r" parinktis, baigus pokalbį dabartinis darbo katalogas buvo neteisingai pakeistas.
- Jei "r" nebuvo perduotas kaip paskutinis argumentas, funkcija išleido klaidą.
- "null" nebuvo priimtas kaip pirmasis argumentas, nurodantis dabartinį darbo katalogą.
- "Windows 7" nepavyko spausdinti šakninio katalogo turinio, t. y. os.list ('c:') grąžino dabartinio darbo katalogo turinį.
- Kai eilutė buvo indeksuota be numerio, pvz., "str [null]", Agena grąžino "null". Dabar iškilo klaida.
- Jei biblioteka.agn nerasta, įspėjime du kartus buvo išvedamas neteisingas kelias. Tai pakeista.
- Substring operatorius buvo pertvarkytas, bet senoji versija vis dar bus prieinama iki Agena 2.0: nauja yra: `str [iš kairės į dešinę]`, senoji versija buvo: `str $ (kairėn, dešinėn)` . Pavyzdys: prieš: `str: = 'string'; Spausdinti (str $ (2, 3)) `-> 'tr' dabar: `str: = 'string'; Spausdinti (str [2 iki 3]) `-> "tr"
- Dabar galite nustatyti stulpelių masyvų ir sekų subtitrus su nurodytu nauju sintaksu: `s [iš kairės į dešinę]`. Pavyzdys: dabar: `a: = [10, 20, 30, 40]; atspausdinti (nuo [2 iki 3]) `-> [20, 30] dabar: `a: = seq (10, 20, 30, 40); atspausdinti (nuo [2 iki 3]) `-> seq (20, 30)
- Dabar "ops" funkcija leidžia nurodyti vertes, kurias reikia grąžinti, perduodant jų indekso pozicijų seką kaip pirmąjį argumentą, pvz. ops (seq (1, -1), 10, 20,
- 30)
- Nauja funkcija `strings.include` įterpia simbolių seką į eilutę
- tam tikroje pozicijoje
- Šios funkcijos dabar išleidžia klaidą, o ne tiesiog grąžina "failą"
- nesėkmės atveju: `os.remove`,` os.move`, `os.mkdir`,` os.rmdir`, `os.chdir`.
- Šių operatorių, dirbančių su šiukšlių rinkiniais ir seka, gerinimas: "insert", "union", "crossesection", "minus", "unikalus", "copy", "pop / top" ir "pop / bottom" teiginius ir nustatykite užduotis.
- Pagerintas fractals.draw klaidos pranešimas, jei FRACTINT spalvų žemėlapio failas nėra
- nebuvo rasta li>
- Šiame leidime yra naujų funkcijų ir išvalytos vardų sritis.
- "Agena 1.0" suderinamumas:
- Kai kurios funkcijos buvo pašalintos iš "Agena", o kai kurios buvo pakeistos į paketo funkcijas (žr. toliau). Jei vis tiek norite jas naudoti, išduokite readlib "compat" komandinėje eilutėje arba įrašykite aukščiau pateiktą teiginį į savo iniciacijos bylą, jei norite, kad Agena 1.0 būtų suderintas su ankstesniu.
- Išplėstinis funkcionalumas:
- Dabar lentelių masyvams gali būti taikomi "pop / top" ir "pop / bottom" bei "bottom" ir "top" operatoriai.
- Kai skambinama su "null" arba be jokių argumentų, "os.chdir" nebeteikia klaidos, bet grąžina dabartinį darbo katalogą. Taigi senoji "os.curdir" C funkcija buvo pakeista viena, parašyta Agenos kalba.
- "os.list" dabar rekursyviai perkelia poaplankius, jei pateikiama nauja "r" parinktis.
- "Join" operatorius taip pat priima neprivalomą delimitorą ir palaiko galimybę nurodyti pirmąjį ir paskutinį susietos struktūros elementą.
- "instr" dabar gali ieškoti iš dešinės eilutės pabaigos, praleidžiant neigiamą poziciją.
- Jei lentelėje yra kitų lentelių, rinkinių, sekų ar porų, "kopija" dabar žino, kaip tinkamai elgtis su šiomis nuorodomis, jei jie įvyksta kelis kartus: jei įterpta struktūra yra įtraukta n kartų, tada atliekama viena tikroji kopija ir Įterpiamos n-1 nuorodos į šią naujai sukurtą struktūrą. Anksčiau buvo padaryta n nepriklausomų kopijų.
- Nauja funkcija "isnonposint" patikrina, ar nurodyti skaitmenys yra visi sveiki ar neigiami.
- "io.close" dabar gali uždaryti keletą failų tik vienu skambučiu.
- funkcija `with` nesuteikė trumpų pavadinimų šioms" math "paketo procedūroms:" convertbase "," fraction "," zeroin "," todecimal "," lcm "," gcd "ir" ndigits ". Tai buvo ištaisyta.
- Vadove minima "rwritemode" funkcija neegzistavo. Dabar jis yra prieinamas, bet vadinamas "rmode".
- Įvairių funkcijų klaidų pranešimai buvo patobulinti.
- Vardų erdvės valymas: pakeistos arba perkeltos funkcijos:
- "library" ir "loadclib" bazės bibliotekos funkcijos buvo perkeltos į "paketo" biblioteką.
- Buvusios "rdelete", "rget", "rinit", "roinit", "rmode", "rset", "remember" ir "default" bazės bibliotekos funkcijos buvo perkeltos į naują "rtable" paketą .
- Pervardavo pasaulinę _Env lentelę į "environ", kurioje dabar yra ir procedūrų, leidžiančių prieigą prie aplinkos.
- Buvusios pasaulio "homedir" ir "infolevel" aplinkos kintamieji buvo atitinkamai pervardyti į "environ.homedir" ir "environ.infolevel".
- Toliau buvusios bazinės bibliotekos funkcijos buvo perkeltos į "environ" paketą: anames, attrib, gc, getfenv, globals, isselfref, pointer, setfenv , "naudojamas", "userinfo", "__RESTART", "__DOTTYPRINT".
- `mapm.xtoNumber` buvo pervadintas į` mapm.xtonumber`, `mapm.xtoString` buvo pervadintas į` mapm.xtostring`. Siekiant sugrįžti, senų funkcijų pavadinimai vis dar gali būti naudojami vykdant lib / compat.agn failą (pirmiausia skaitykite lib paketą `mapm` ir įkelkite failą compat.agn.)
- Nepatvirtintos funkcijos ir kintamieji:
- "strings.seek" neveikia. Jo funkcionalumas buvo pridėtas prie "instr" operatoriaus. Norėdami išjungti "instr" modelio atitikimo režimą, praeiti paiešką kaip trečią ir "true" kaip ketvirtą argumentą. "instr" yra apie 40% greitesnis nei modelio atitikimo režime, nei "strings.seek". Norėdami susigrąžinti atgal, "lib / compat.agn" failas buvo pridėtas "strings.seek".
- "concat" bazės bibliotekos funkcija pašalinta. Vietoj to naudokite "prisijungti". Norėdami susigrąžinti ankstesnę funkciją, ji buvo pridėta į failą lib / compat.agn.
- "hasrtable" ir "hasrotable" funkcijos pašalintos. Norėdami sugrįžti, jie buvo įtraukti į failą lib / compat.agn.
- "pcall" funkcija nebetinkama. Vietoj to naudokite "apsaugoti". Norėdami susigrąžinti atgal, funkcija buvo pridėta į lib / compat.agn failą.
- "maptoset" funkcija nebetinkama. Norėdami susigrąžinti atgal, funkcija buvo pridėta į lib / compat.agn failą.
- "os.alldirs" funkcija nebeveikia. Vietoj "os.list" kvietimo naudokite "dirs" ir "r" parinktis. Norėdami susigrąžinti atgal, funkcija buvo pridėta į lib / compat.agn failą.
- `os.isMac`,` os.isSolaris`, `os.isLinux`,` os.isWin`, `os.isOS2`,` os.isDOS`, `os.isHaiku` nebuvo pasenę. Vietoje to naudokite naujus aplinkos kintamuosius environ.Os ir environ.Cpu, o tai taip pat pagreitina kodą. Norėdami susigrąžinti atgal, šios funkcijos buvo pridėtos į lib / compat.agn failą.
- Neteisėtas _VERSION kintamasis buvo pašalintas. Norėdami grįžti į suderinamumą, jo priskyrimas buvo pridėtas į failą lib / compat.agn.
- Kiti pakeitimai:
- "C API" funkcija lua_rawsetstringnumber, nurodyta instrukcijoje, neegzistavo. Tai pakeista.
- Analizatoriaus kodo optimizavimas.
- Kai kuriuose paketuose, netyčia, keli kintamieji buvo netiesiogiai paskelbti visuotinai. Tai buvo ištaisyta.
- Ištaisyti ir atnaujinti inicializacijos pavyzdžių rinkmenas.
- "AgenaEdit" atnaujinta.
- Kalbos schemos failai buvo atnaujinti.
- Dabar "Linux" diegimo programų paketą sudaro "xBase" paketas.
- Patobulinti "join", "copy" ir "filled" operatorių klaidų pranešimai, "toset", "toseq" ir "totable" funkcijos, "insert", "delete", "pop" ir "už" kilpų.
- Su sekomis Agena sudaužė sekančią įvykių seką: 1) buvo įvykdyta "delete" išrašas, 2) sekos buvo tuščios ir 3) naujas elementas buvo vėl įdėtas. Tai buvo ištaisyta. (Vidinėje "ištrinimo" ataskaitoje nebėra vidinio seka dydžio.)
- Su didelėmis eilėmis, "concat" sudaužė. Tai buvo ištaisyta.
- Su 512 ir daugiau baitų eilutėmis "prisijungti" ir "pakeisti" gali sugesti. Tai buvo ištaisyta. Dabar abu operatoriai yra daug greičiau nei bet kada anksčiau.
- `math.isprime` grąžino neteisingus rezultatus su argumentais & gt; 2 ^ 31 (vadove nurodoma miglotai). Tai buvo ištaisyta išplečiant argumentų sritį į sveikus skaičius, kurių vertės yra iki +/- 2 ^ 63.
- "math.nextprime" ir "math.prevprime" turėjo tą pačią problemą su didesniais argumentais, pavyzdžiui, "math.isprime". Tai taip pat buvo pakeista. Remiantis argumentu 2, "io.nextprime" neteisingai grąžino 5 vietoj 3. Tai taip pat buvo ištaisyta.
- "prisijungti" gali sugadinti "Agena" ir kitaip elgtis netikėtai, jei gaunama eilutė
- viršija 512 baitų. Tai pakeista.
- Jei "restart" buvo paskambintas, kai ankstesnėje buvo išleista klaida
- teiginys, "Agena" retais atvejais susidūrė su korupcija. Tai buvo
- nustatytas.
- Naudojant naujai sukurtas lenteles, kuriose yra tik vienas elementas maišos dalyje, "attrib"
- dabar grąžina teisingus skirtų maišų laiko tarpsnių skaičiaus rezultatus (1, o ne 0).
- Ištaisyti "qsadd" ir "sadd" klaidų pranešimai.
- Patobulinti "join", "copy" ir "filled" operatorių klaidų pranešimai ir "insert"
- ir "delete" teiginius.
- Pagerėjo klaidų apdorojimas "skaityti", "išsaugoti" ir "fractals.draw".
- "Makefile" patobulinimai.
- Buferio dydžiai dabar standartizuoti šaltiniuose.
- Kadangi iniciacijos metu buvo pranešta apie retas avarijas (kai kuriose situacijose esant "Windows XP SP 3" ir "OpenSolaris 134"), šiukšlių surinkimas dabar yra išjungtas iniciacijos proceso etape. Šie retai segmentavimo gedimai atsirado "OpenSolaris", kai "Agena" dvejetainė paleidžiama kaip kataloge "root", o "XP" - paspaudus "Agena" darbalaukio piktogramą su vietos administratoriaus teisėmis.
- Įvedus -d jungiklį į komandinės eilutės parinktis, kad būtų galima spausdinti informaciją per "Agena" iniciacijos procesą.
- Įvedė tinkamą klaidų tvarkymą, jei atmintis negalėjo būti priskirta: "trim", "upper", "lower", "os.curdir" ir "strings.rseek".
- Pašalinta galimybė atminties nutekėjimui inicijuoti C funkcijoms: agenaL_initialise ir agenaL_setLibname bei "io.write *" ir "print".
- Naujoji funkcija `protect` apsaugo režimą ir iškviečia bet kokią galimą klaidą, kad skaičiavimas nebūtų pertrauktas. Klaidos atveju ji nustato klaidos eilutę prie globalinio kintamojo "lasterror". Jis susijęs su "pcall", bet neatsako kaip būsimo kodo kaip pirmo rezultato.
- `attrib` dabar grąžina teisingus rezultatus tuščiais struktūromis. Naudojant tuščias struktūras, funkcija neteisingai suskaičiuoja vieną priskirtą maišos elementą anksčiau.
- "attrib" dabar grąžina baitų, užimtų lentelėmis, rinkiniais ir sekomis, skaičių kartu su naujais "baitais". Grąžinamų baitų skaičius grindžiamas kartais prieštaringa informacija internete.
- `replace` nukrito Agena, jei gautoji eilutė viršijo 512 baitų. Tai pakeista.
- "Pareikšti" dabar grąžina "pranašystė nepavyko". vietoj "prielaida nepavyko".
- Nauja C API funkcija lua_setglobal2 nustato viršuje esančią reikšmę visuotiniam pavadinimui. Priešingai nei lua_setglobal, reikšmė nėra iškrauta.
- Lobject.h kodo valymas (lentelės struktūra) ir lapi.c (makrokomandas). Bugfix to C API funkcija agn_deletertable, jei Agena yra sudaryta su nepagrįstu lua_assert. Pakeiskite išsaugojimo funkcijos grąžintiną vertę, kuri naudojama iniciacijos metu, siekiant užkirsti kelią korupcijai (šiek tiek).
- Nauja "os.setenv" procedūra nustato aplinkos kintamuosius operacinės sistemos lygiu. Iš pradžių ši funkcija buvo parašyta Marku Edgaru.
- "Windows" operacinėje sistemoje "os.getenv" dabar ragina vietinę "Windows API" funkciją, kad gautų aplinkos kintamųjų reikšmes. "Windows" kodą parašė Markas Edgaras.
- Naujoji "os.environ" funkcija grąžina visus priskirtus aplinkos kintamuosius lentelėje. Iš pradžių ši funkcija buvo parašyta Marku Edgaru.
- "io.open" dabar įtraukia FILE rodyklę, vardą ir sėkmingai atidaryto failo režimą į naują lentelę "io.openfiles". "Io.close" pašalina įrašą iš "io.openfiles", jei failas gali būti sėkmingai uždarytas.
- Kai iškviečiamas be jokių argumentų, "io.read" dabar grąžina klaidą, jei skambinama be jokių argumentų AgenaEdit (bandant skaityti klaviatūrą).
- Jeigu "io.anykey" ir "io.getkey" yra vadinami AgenaEdit, rodomas tinkamas klaidos pranešimas.
- Vienas iš inicializavimo pakopų buvo pakeistas, kad būtų išvengta galimo korupcijos (nors problemos niekada nebuvo).
- os.isMac ('ppc') dabar veikia PowerPC įrenginiuose.
- Primer ir Reference 4 ir 6 skyrius buvo peržiūrėti ir išplėsti. Įtrauktas indeksas, taip pat atlikta daug kosmetikos.
- Išsaugota teisinga versijos informacija vykdomajam Windows.
- Gerbiami ponios ir ponai,
- po beveik ketverių metų plėtros paskelbiau "Agua 1.0" - procedūrinę programavimo kalbą, gautą iš "Lua C" šaltinių.
- Mano bendruomenė iš tiesų yra labai maža, tačiau kai kurie vartotojai man sakė, kad tai gerai, naudinga ir stabili.
- Būsiu labai patenkintas, jei peržiūrėtumėte "Agena" ir pranešėte apie savo rezultatus. Jei nerandate naudos, pasakykite man asmeniškai ir suteiksite galimybę išspręsti problemas.
- Ši versija apima atnaujintą "AgenaEdit" GUI versiją (žr. vykdomąjį failą "agenaedit").
- AgenaEdit su sintaksės paryškinimu ir įmontuotu runtime varikliu buvo išleistas Agena 0.34.1.
- AgenaEdit su sintaksės paryškinimu ir įmontuotu runtime varikliu buvo išleistas Agena 0.34.0.
- "Agena 0.33.2 su" xBase "failų palaikymu buvo išleistas.
- "Agena 0.33.1 su" xBase "failų palaikymu buvo išleistas.
- Naujasis "xbase" paketas gali skaityti ir rašyti "xBase" failus, suderinamus su "dBASE III" standartu.
- "binio" ir "ads" paketai dabar gali tvarkyti iki 2 ^ 63 baitų. Prieš jie galėtų tvarkyti tik failus, kurių dydis yra iki 2 ^ 31 baitų.
- Naujos funkcijos `io.lock`,` io.unlock`, `binio.lock`,` binio.unlock`, `ads.lock` ir` ads.unlock` užfiksuoja failą iš skaitymo ir rašymo prieigos kita Agena
- funkcijos ar net kitos programos, jei pastaroji naudoja fiksavimo protokolą.
- Baselibo funkcija "skaityti" nebegali būti perrašyta "su".
- Nauja "package.checkClib" patikrina, ar į pradinę C paketo dinaminės bibliotekos paketą buvo įkeltas paketas. Jei ne, ekrane pasirodys įspėjimas ir sukurta tuščia paketų lentelė. Kitaip jis nieko nedaro.
- "Haiku" prievadas dabar palaiko dinaminių nuorodų bibliotekas.
- Išleido "Agena 0.32.3" su naujais ir suderintomis skaičiavimo funkcijomis.
- "Mac" vartotojams nebūtina daugiau papildomų priklausomybių bibliotekų įdiegti.
- Dabar prieinamas Haiku uostas.
- Ši versija turi įmontuotą grafiką, savavališką tikslumo matematiką ir patobulintas funkcijas.
- Pridėjo fraktalų paketą, kad lengvai atkurtumėte fraktalius "Solaris", "Mac", "Linux" ir "Windows" versijose.
- "Solaris" ir "Linux" dabar "gdi.mouse" grąžina paspaudus pelės mygtukų standartines vertes (kaip ir "Mac" ir "Windows" leidimus).
- Atsižvelgiant į -v parinktį, Agena dabar neperkvalifikuoja iniciacijos failų.
- "UNIX" ar "Mac", inicializacijos rinkmenų pavadinimai visada turi būti ".agenainit", nepriklausomai nuo to, ar jie yra / usr / agena / lib ar asmeniniame aplanke.
- "Intel" procesorių dvejetainis "Mac" paskirstymas yra apie 30% greitesnis nei ankstesni išleidimai.
- "io.getkey" funkcija dabar galimas "Mac OS X" leidime.
- "Mac" sistemoje "os.system" dabar grąžina išsamią informaciją apie operacinę sistemą ir procesoriaus tipą. Atkreipkite dėmesį, kad ji grąžina informaciją apie Darvino branduolį ir kad pirmasis įrašas gautoje lentelėje dabar yra "Darvinas", o ne "MacOSX".
- "os.memstate", "os.freemem" ir "os.beep" dabar palaiko "Mac OS X".
- "io.anykey" yra prieinamas visose platformose, bet grįžta "nepavyko" DOS ir "Mac". Taigi, naudojant "pele" parinktį, "gdi.draw" nebematys klaidų "Mac".
- "os.listcore" buvo išplėsta tik į failų, katalogų ar nuorodų pavadinimus. "." ir ".." dabar niekada negrąžinami.
- "os.list" neatpažino jokių parinkčių ir grąžino vietoj tuščią sąrašą. Tai buvo ištaisyta. Be to, dabar galima suderinti parinktis. "." ir "..", nes pirmasis argumentas yra tinkamai pripažintas.
- "os.curdir" dabar automatiškai pakeičia grįžtamąsias brūkšnius keliuose, kuriuos nustato įpjovos.
- "os.fstat" ir "ads.attrib" nukrito Agena, jei bylos data buvo viršyta 2038 m. sausio 20 d. antradienį. Tai buvo nustatyta arba grąžindami tuščią lentelę datos raktą (os.fstat), arba 0/0/01 00:00:00, (ads.attrib).
- 'utils.calendar' nukrito Agena, jei jo argumentas buvo negaliojantis, neigiamas arba per didelis. Tai buvo pakeista. Be to, jei data neatitinka antradienio, sausio 20 d. 2038 m., Grąžinama teisinga data.
- Naujos funkcijos `os.screensize` ir` os.mousebuttons` grąžina atitinkamą ekrano skiriamąją gebą ir pridėtos pelės mygtukus (tik "Windows").
- Agena.ini.sample failas buvo pervadintas į .agenainit.sample į UNIX / Mac paskirstymus.
- Naujas "Solaris" rinkmenos failas dabar siunčiamas kartu su "Agena" žemėlapiu, privalomu visiškai sukonfigūruoti originalius MAPM šaltinius, kuriuos parašė Michael C. Ring.
- "Agma" "DOS" leidime dabar yra "mapm" paketo, skirto arbitražo matematikos tikslumui.
- "mapm" paketo naudojamų skaitmenų skaičius pradedamas skaičiuoti iki 17 skaitmenų "Agena" paleidžiant DOS ar OS / 2 Warp. Prieš numatytuosius nustatė 1 skaitmuo.
- MAPM įrišimo kodas C buvo standartizuotas. Prieš tai DOS ir OS / 2 šaltinių failai skiriasi nuo UNIX ir Windows.
- Mažų "Windows" ir "Mac OS X" įdiegiklių patobulinimų.
- "Mac" sistemoje dokumentai dabar yra bibliotekoje / dokumentacijoje / Agena vietoj / Users / Share / Agena.
- Grąžinimai, cos, arcsin, arccos ir arctan funkcijos grąžino -0 vietoj 0 kaip įsivaizduojamą vienetą, dėl kurio buvo gauti netinkami rezultatai, jei šių funkcijų grąžinimas buvo taikomas kitoms funkcijoms, tokioms kaip ln (ty ženklas iš minėtų vienetų šių kitų funkcijų rezultatų buvo neteisingas). Tai buvo ištaisyta nustatant įsivaizduojamą vienetą nuo 0 iki 0 sugrįžus į nuodėmę, cos, arcsin, arccos ir arctan.
- Arcsin ir arccos funkcijos grąžino neteisingus rezultatus argumentams z, jei abs (real ((z))) & lt; 1. Tai buvo ištaisyta.
- OS / 2 atveju dauguma sudėtingų aritmetinių funkcijų grįžta neapibrėžtai. Tai buvo ištaisyta.
- Atkreipkite dėmesį, kad OS / 2 ir DOS sudėtinio domeno vis dar yra problemų su arccos ir arcsin operatoriais, kurie tam tikrose situacijose grįžta neapibrėžtai.
- "Windows", "i386" "Solaris 10" ir "Linux" versijos dabar sudaryti su GCC 4.4.x (ir be xmath86.h), todėl labai sumažino sudėtingų aritmetinių klaidų skaičių. Tiesą sakant, sudėtingų matematikos testų bylos grąžina nulines klaidas. "Sparc" versija buvo sukurta su "GCC 4.3.3" "Sun Sparc" ir turi mažiau klaidų sudėtingame aritmetiniame skaičiavime, nei buvo paskelbta 0.31.1 versija.
- Pervardyti šiuos failus: config.h - & gt; agncfg.h, chelpers.h - & gt; agnhlps.h, agnxlib.h - & gt; agnxlib.h.
- "Mac" kompiuteryje "gdi.mouse" dabar grąžina standartines reikšmes paspaudus pelės mygtukus.
- "Agena 0.31" apima visus pagrindinius įrankius, skirtus taškų, linijų, apskritimų, elipsių, stačiakampių, lankų sudarymui. ir tt, kad valdytumėte vaizdo dydį ir spalvas.
- Kalbos nuoseklumo išleidimas su klaidų taisymu - buvo išleistas. Žiūrėkite pokyčių žurnalą apie tai, kas pasikeitė.
- "Agena" dabar turi įmontuotą grafiką. Tai leis jums nuskaityti diagramas, vaizdus ir tt X11 arba Win32 lange arba GIF, PNG, JPEG, FIG ar PostScript rinkmenoms tiek Solaris, Linux ar Windows. "Agena" prisijungia prie "g2" grafikos bibliotekos, kurią parašė Liubomiras Milovicas ir Hortas Wagneras, siekiant suteikti šias naujas galimybes.
- "Agena 0.30" apima visus pagrindinius įrankius, skirtus taškų, linijų, apskritimų, elipsių, stačiakampių, lankų sudarymui. ir tt, kad valdytumėte vaizdo dydį ir spalvas.
- & gt; su "gdi";
- gdi paketas v0.1.4 nuo 2009 m. gruodžio 20 d.
- arc, arcfilled, background, circle, circle filled, clearpalette, close, dash, ellipse, ellipse filled, flush, fontsize, initpalette, ink, lastaccessed, line, newline, newpoint, open, plot, plotfn, point, square, rectanglefilled , reset, resetpalette, setinfo, setoptions, struktūra, tekstas, storis, trikampis, trianglefilled, useink
- Funkcija plotfn atkreipia vieną ar daugiau funkcijų grafikų į vieną realią, pasirinktinai kartu su ašimis, kuriomis pavaizduota vartotojo apibrėžta spalva. Taip pat galima nurodyti y ašies diapazoną, kitaip Agena nustato geriausią nustatymą. Yra keletas kitų parinkčių, kurias galima nustatyti su setoption funkcija ir kuri bus taikoma visoms seansų metu sudarytoms grafikoms: lango raiška, spalvų žemėlapis, linijos storis ir fono spalva. Žinoma, vartotojas gali ignoruoti kai kurias arba visas konkretaus sklypo parinktis. Ypatumai yra tinkamai apdorojami.
- Išleido "Agena 0.30.3" su įmontuota grafika, savavališkai tikslia matematika ir patobulintos funkcijos.
- "Agena" dabar turi įmontuotą grafiką. Tai leis jums nuskaityti diagramas, vaizdus ir tt X11 arba Win32 lange arba GIF, PNG, JPEG, FIG ar PostScript rinkmenoms tiek Solaris, Linux ar Windows. "Agena" prisijungia prie "g2" grafikos bibliotekos, kurią parašė Liubomiras Milovicas ir Hortas Wagneras, siekiant suteikti šias naujas galimybes.
- "Agena 0.30" apima visus pagrindinius įrankius, skirtus taškų, linijų, apskritimų, elipsių, stačiakampių, lankų sudarymui. ir tt, kad valdytumėte vaizdo dydį ir spalvas.
- & gt; su "gdi";
- gdi paketas v0.1.4 nuo 2009 m. gruodžio 20 d.
- arc, arcfilled, background, circle, circle filled, clearpalette, close, dash, ellipse, ellipse filled, flush, fontsize, initpalette, ink, lastaccessed, line, newline, newpoint, open, plot, plotfn, point, square, rectanglefilled , reset, resetpalette, setinfo, setoptions, struktūra, tekstas, storis, trikampis, trianglefilled, useink
- Funkcija plotfn atkreipia vieną ar daugiau funkcijų grafikų į vieną realią, pasirinktinai kartu su ašimis, kuriomis pavaizduota vartotojo apibrėžta spalva. Taip pat galima nurodyti y ašies diapazoną, kitaip Agena nustato geriausią nustatymą. Yra keletas kitų parinkčių, kurias galima nustatyti su setoption funkcija ir kuri bus taikoma visoms seansų metu sudarytoms grafikoms: lango raiška, spalvų žemėlapis, linijos storis ir fono spalva. Žinoma, vartotojas gali ignoruoti kai kurias arba visas konkretaus sklypo parinktis. Ypatumai yra tinkamai apdorojami.
- "Agena" dabar turi įmontuotą grafiką. Tai leis jums įterpti diagramas, vaizdus ir tt į langą arba į GIF, PNG, JPEG, FIG arba PostScript failą "Solaris", "Linux" ir "Windows", įtraukiant į "G2" grafinę biblioteką, kurią parašė Liubomiras Milanovicas ir Horst Wagner.
- "Agena 0.29.0" turi visas pagrindines priemones, skirtas taškų, linijų, ratų, elipsių, stačiakampių, lankų sudarymui. ir tt, kad galėtumėte tvarkyti spalvas ir kurti atvaizdų failus arba atidarykite "X11" arba "Win32" langus.
- Vienas iš būsimų atnaujinimų, aukšto lygio vartotojo sąsaja su gdi.plotfn ir gdi.plot funkcijomis leidžia jums skirstyti vienalytiškas funkcijas ir taškų rinkinius "kelyje". Abi funkcijos jau įtrauktos į Agena 0.29.0, tačiau vis dar yra beta versijos. Čia yra peržiūra:
- & gt; su "gdi";
- gdi paketas v0.1.0 nuo 2009 m. lapkričio 24 d.
- lankas, fonas, apskritimas, clearpalette, uždaryti, brūkšnys, elipsė, užpildytas ARC, užpildytas apskritimas, užpildytas ellipsas, užpildytas stačiakampis,
- filledTriangle, flush, fontsize, initpalette, ink, lastaccessed, line, open, plot, plotfn, point, stačiakampis, reset
- resetpalette, setinfo, setoptions, struktūra, tekstas, storis, trikampis, useink
- Funkcija plotfn atkreipia funkcijos grafiką į vieną realią, pasirinktinai kartu su ašimis, kuriomis pavaizduota vartotojo apibrėžta spalva. Y ašies diapazonas taip pat gali būti pateiktas, kitaip Agena bando nustatyti geriausią nustatymą. Yra keletas kitų parinkčių, kurias galima nustatyti su setoption funkcija ir kuri bus taikoma visoms seansų metu sudarytoms grafikoms: lango raiška, spalvų žemėlapis, linijos storis ir fono spalva. Žinoma, vartotojas gali ignoruoti kai kurias arba visas konkretaus sklypo parinktis. Ypatumai yra tinkamai apdorojami.
- plotfn (sin (x) * x>, -5, 5, spalva ~ "mėlyna", ašies spalva ~ "pilka", res ~ 640: 480);
- Nauja "toSet" bazinio sluoksnio funkcija paverčia eilutę į jo simbolių rinkinį ir lentelę ar seką į rinkinį.
- io.readlines buvo pataisyta, kad apdorotų daugiau nei 2048 simbolių eilučių. Ši funkcija dabar taip pat išleidžia klaidą, jei vidinės atminties paskirstymas nepavyksta. Vidinis buferio dydis sumažintas nuo 2048 baitų iki 512 baitų. Galite tai pakeisti, priskirdami AGN_IOREADLINES_MAXLINESIZE kitą reikšmę failo agnconf.h.
- io.readlines dabar taip pat priima failų rankenas. Jei naudojate failų rankenas, o ne failų pavadinimus, atkreipkite dėmesį, kad jūs turite uždaryti failą rankiniu būdu, naudodami io.readlines.
- io.readlines nebegauna tuščios lentelės, jei failas neegzistuoja. Vietoj to jis klaida.
- Dabar "ToSeq" grąžina klaidą, o ne sugenda, jei negauna eilutės, rinkinio ar lentelės.
- Naudojama bazelibo funkcija buvo išplėsta ir atminties naudojimas gali sugrįžti baitais, kbytes ir gibetais. Dabar tai yra C funkcija.
- Neužfiksuota gcinfo funkcija buvo ištrinta. Jo funkcijos buvo naudojamos.
- Nauja C API funkcija agn_usedbytes grąžina sistemos naudojamų baitų skaičių.
- Ištaisyta neteisinga lentelės klaidos ataskaita.
- pervadinta C AOI funkcija `agn_isioforcerror` į 'agn_isioforceerror`.
- Pridėjo klaidos funkciją math.erf ir papildomą klaidos funkciją math.erfc.
- Pridėta pirmosios rūšies math.besselj Beselio funkciją ir antros rūšies matematikos Beselio funkciją. Tvarką pateikia pirmas argumentas, argumentas kaip antras argumentas.
- Jei naujasis aplinkos kintamasis _EnvIoForceError yra nustatytas kaip ne nulinė vertė (pagal numatytuosius nustatymus), io.open, io.readlines ir įvairios binio funkcijos palieka klaidą, o ne tiesiog grįžta įprastai.
- binio.readbytes ir binio.readchar grąžino tuščią seką, o ne nesėkmę, jei failas nebuvo skaitomas. Tai pakeista: nepavyko arba klaida dabar grąžinama.
- "arcsin" ir "arccos" dabar yra operatoriai, taigi jie yra apie 40% greitesni.
- Pridėjo "xor" operatorių, kuris atlieka loginę išskirtinę-OR reikšmėms, kurios įvertina arba yra tiesos, klaidingos, nesėkmingos ir nulinės.
- Pridėta operatoriaus žyma, kuri patikrina, ar žodis baigiasi tam tikru fraziu, ir grąžina savo poziciją kaip skaičių. Operatorius grąžina nulį, jei stygos yra vienodo ilgio, bent viena iš jų yra tuščia eilutė arba žodis nesibaigia nurodytame pavyzdyje.
- Dabar grbrtable tik grįžta tiesa, jei ji turi lentelę read-write remember (prisiminti lentelę) (atnaujinta grąžinimo pareiškimu).
- Naujoji funkcija "hasrotable" nustato, ar funkcija turi tik skaitymui atsimintą lentelę (kurią negalima atnaujinti grąžinimo teiginiu) ir grąžina tikrą ar netikslią.
- Nauji operatoriai "gethigh" ir "getlow" gauna iš skaičiaus aukštesnius ir mažesnius baitus (t. y., dvigubai).
- Nauji operatoriai sethigh ir setlow nustato aukštesnius ir apatinius baitus skaičiui (t. y., C dvigubai).
- Nauji operatoriai band, bor, bxor ir bnot vykdo bitumines ir (arba) išskirtines arba papildomas operacijas su numeriais.
- Nauja "branduolio" funkcija konfigūruos "Agena" branduolio nustatymus. Šiuo metu jis gali pakeisti, kaip bituminiai operatoriai dirba viduje (pasirašytų ar nepasirašytų sveikųjų skaičių naudojimas) ir kaip spausdinami numeriai.
- Esant realiems skaičiams x, matematikos argumentas dabar grąžina Pi, o ne 0, jei x & lt; 0.
- Dėl pagrindinės ANSI C bibliotekos funkcijų klaidos arcsin ir arccos sukūrė blogus rezultatus su sudėtingais skaičiais, jei jų įsivaizduojama dalis UNIX sistemose buvo nulinė. Tai buvo ištaisyta.
- math.isPrime pranešė neteisingą numeriu 2. Tai buvo ištaisyta.
- Priešingai nei instrukcija, abs sugrįžo 2, kai nepavyko. Dabar jis grąžina -1 kaip dokumentuota.
- Pakeitimų paketas pašalintas.
- Pridėta nauja C API funkcija agn_isioforcerror, kuri patikrina, ar _EnvIoForceError buvo nustatyta kaip nulinė vertė.
- Nauja C API funkcija agn_setbitwise nustato, ar operatoriai juostos, bor, bnot, bxor ir pamainos viduje apskaičiuojami su pasirašytais ar nesignatuoto sveikieji skaičiais.
- Nauja C API funkcija agn_getbitwise grąžina agn_setbitwise nustatytą režimą.
- Nauja C API funkcija agn_setdigits nustato skaitmenų spausdinimui naudojamų skaitmenų skaičių.
- Nauja C API funkcija agn_getdigits nustato skaičių spausdinimui naudojamų skaitmenų skaičių.
- Vidinis: pašalintas neigiamas "REPL" įrašas iš "luaP_opnames".
- "Windows" diegimo programa jau buvo patobulinta, patikrinus anksčiau įdiegtą "Agena" versiją, užkertant kelią diegimo programos paleidimui, jei jau yra paleista kita jo egzempliorė ir kai kurie kiti nedideli patobulinimai.
- Ncurses
- "GNU Readline"
Kas naujo
Kas naujo
Kas naujo
Kas naujo versijoje 2.6.1:
Kas naujo 2.5.4 versijoje:
Kas naujo 2.5.3 versijoje:
Kas naujo 2.4.2 versijoje:
Kas naujo 2.3.0 versijoje RC1:
Kas naujo 2.1.1 versijoje:
Kas naujo 2.1.0 versijoje:
Kas naujo versijoje 2.1.0 RC:
Kas naujo 2.0.0 versijoje:
Kas naujo versijoje 2.0.0 RC3:
Kas naujo 2.02 versijoje RC2:
Kas naujo 2.0.0 versijoje RC1:
Kas naujo versijoje 1.12.9:
Kas naujo versijoje 1.9.0:
Kas naujo 1.6.0 versijoje:
Kas naujo 1.5.1 versijoje:
Kas naujo 1.5.0 versijoje:
Kas naujo 1.4.2 versijoje:
Kas naujo 1.4.1 versijoje:
Kas naujo versijoje 1.4.0:
Kas naujo 1.3.3 versijoje:
Kas naujo 1.3.2 versijoje:
Kas naujo 1.3.1 versijoje:
Kas naujo 1.2 versijoje:
Kas naujo 1.1.0 versijoje:
Kas naujo 1.0.6 versijoje:
Kas naujo 1.0.5 versijoje:
Kas naujo 1.0.4 versijoje:
Kas naujo 1.0.3 versijoje:
Kas naujo 1.0.2 versijoje:
Kas naujo 1.0 versijoje:
Kas naujo versijoje 0.34.1d:
Kas naujo versijoje 0.34.1:
Kas naujo versijoje 0.34.0:
Kas naujo versijoje 0.33.2:
Kas naujo versijoje 0.33.1:
Kas naujo versijoje 0.33.0:
Kas naujo versijoje 0.32.3:
Kas naujo versijoje 0.31.5:
Kas naujo versijoje 0.31.3:
Kas naujo versijoje 0.31.2:
Kas naujo versijoje 0.31.1:
Kas naujo versijoje 0.31.0:
Kas naujo versijoje 0.30.4:
Kas naujo versijoje 0.30.3:
Kas naujo versijoje 0.30.2:
Kas naujo versijoje 0.29.0:
Kas naujo versijoje 0.27.2:
Kas naujo versijoje 0.27.0:
Reikalavimai :
Komentarai nerastas