Kana on ilmainen ja avoimen lähdekoodin kääntäjä hakemus järjestelmän ohjelmointikieli. Se on yhteensopiva Linux / Unix-käyttöjärjestelmä.
Kana tuottaa tehokas ja kannettava C, ja se tukee monia nykyisen järjestelmän kielen standardin (katso alla oleva luettelo lisätietoja).
Se tarjoaa out-of-the-box tuki SRFI 0 (joht-laajentaa), SRFI 1 (List kirjasto), SRFI 2 (ja anna *), SRFI 4 (Homogeeniset numeerista vektori tietotyypit), SRFI 6 (Basic merkkijono satamat ), SRFI 8 (vastaanottaa), SRFI 9 (Record tyypit), SRFI 10 (#, ulkoinen muoto), SRFI 13 (String kirjasto), SRFI 14 (Merkistö kirjasto), SRFI 16 (tapaus-lambda), SRFI 17 ( Yleistynyt setti!), SRFI 18 (multithreading tuki), SRFI 23 (virhe), SRFI 25 (moniulotteinen array perusalkioiden), SRFI 26 (leikata, söpö), SRFI 28 (muoto), SRFI 30 (lohko kommentit), SRFI 37 ( ohjelma argumentti prosessori), SRFI 38 (ulkoinen edustus tietojen jaettu rakenne), SRFI 39 (parametrit), SRFI 40 (Stream kirjasto), SRFI 42 (Eager käsityksiä), SRFI 43 (Vector kirjasto) ja SRFI 55 (edellyttävät-laajennus ).
Mikä on uusi tässä julkaisussa:
- Tämä julkaisu sisältää useita tärkeitä turvallisuuden ja kaatuu korjauksia, kun viime bug-metsästys Spree meidän ydin hakkerit.
Mikä on uusi versiossa 4.8.0.5:
- Tämä julkaisu sisältää useita tärkeitä turvallisuuden ja kaatuu korjauksia, kun viime bug-metsästys Spree meidän ydin hakkerit.
Mikä on uusi versiossa 4.8.0.3:
- Tämä julkaisu ensisijaisesti korjaa vian Linux- ja Solaris mikä aiheuttaa suuria suorittimen käyttöä kun odottaa lapsi prosessi I / O.
Mikä on uusi versiossa 4.8.0.2:
- Tulkki:
- Fix heikentämiseen, d menettelyistä, mikä johti sprintf virhe.
- Compiler:
- Korjaa uudelleenkirjoittamisen rivinvaihtoja (~~) Printf.
- Kesto:
- Salli & gt; 4GB pino 64-bittisissä järjestelmissä (# 974).
- Lisätty puuttuva kirjasto (-lrt) Solaris varten nanosleep puhelut (# 970).
- Rakenna järjestelmä:
- Käytä testi f sijasta testin -e vuonna identify.sh lepyttää Solaris.
Mikä on uusi versiossa 4.8.0.1:
- tietoturvapäivityksiä:
- Käytä POSIX kyselyn () järjestelmissä, joissa saatavilla. Näin vältetään suunnittelun puute valitse (); se tukee enintään FD_SETSIZE kuvaajia.
- Core kirjastot:
- Kiinteät EINTR käsittely prosessi-odotuksen ja kun luettaessa tiedostoa satamista.
- Bugikorjaus varten irregex (# 686). Huomautus: vaikka irregex.scm sanoo nyt versio 0.9.2, versio on todella 0.8.3 sekä muutama vanhaan jakeluun sovitettuja laastaria.
- Kiinteät ongelma "make-polku", joka palautti absoluuttinen polku, jos annetaan suhteellinen yksi ilman hakemiston argumentti.
- 64-bittisissä järjestelmissä ominaisuus tunnisteen "64bit" on rekisteröity.
- Compiler:
- Kiinteät eri bugeja tyyppi tietokantaan.
- Bugikorjauksia ja parannuksia scrutinizer.
- flow-analyysi pass, tyyppi-yhteensopivuuden yhdistelmiä "luettelo" / "luettelo-of" tyyppejä on tehty luotettavampia.
- Syntaksi laajennuskortti:
- Tee makro-nimeksi määritellään alkaa elimissä (sisällä moduulit) nähtävissä myöhemmin muotoja. (# 944).
- Kesto järjestelmä:
- Kiinteät väärän koodin ulkomaan argumentti muuntaminen "unsigned-integer64" (# 955).
- Core työkalut:
- runtime linkkeri polku käännetty suorituskelpoisista ei ollut asetettu oikein FreeBSD järjestelmiin.
- Korjaa asentaa-laajennus rikkoutumista kun toinen arg sisältää pareja (SRC DST).
- Rakenna järjestelmä:
- Estä uudelleenrakentaminen on buildversion.scm jokaisen tehdä (1) Windows.
Mikä on uusi versiossa 4.8.0:
- Liitännät ja functors on lisätty moduulijärjestelmän.
- tyyppi järjestelmä on laajennettu.
- useita bugikorjauksia ja yleinen siivous on tehty kääntäjä, ajonaikainen järjestelmä, ydin kirjastot, ja syntaksi vahvistimen.
Mikä on uusi versiossa 4.6.0:
- jotkut kääntäjä optimoinnit ovat parantuneet merkittävästi.
- Useita sisäänrakennettu menettelyjä ja myöntämismenettelyistä joukkoa, vektoria ja rakenteiden tuottaa nopeammin koodia.
- Yksiköt srfi-4 ja srfi-18 on vahvasti puhdistettu ja optimoitu.
- useita vikoja on korjattu säiettä ajastimella.
- kana-install on laajennettu, ja sen rajat kokoaminen tukea on merkittävästi parannettu.
- rakentaa järjestelmä tukee nyt enemmän alustoja ja kääntäjät.
- infrastruktuurin eri skriptit on uudistettu vastaamaan rakennetta uuden Web-sivuston infrastruktuuria.
Mikä on uusi versiossa 4.4.0:
- järjestelmä voidaan nyt rakennettu llvm-gcc ja / tai "kalahtaa" (llvm C-kääntäjä, joka ei käytä GNU C frontend)
- lisätty uusi vaihtoehto `-trunk 'to' kana-install ', joka voimat rakentamisessa ja asentamisessa kehitysversio laajennuksia yhdessä` -t paikallisten "
- lisätty uusi vaihtoehto `-deploy 'to' kana-install ', joka perustuu laajennus käytettäväksi" käyttöön "sovelluksia (katso jäljempänä)
- lisätty mahdollisuus `-deploy 'to` CSC, kääntäjä kuljettaja. Tämän vaihtoehdon `CSC voi rakentaa täysin itsenäinen sovellus nippua ja kaksinkertainen klikattava Macintosh GUI sovelluksia; katso "Deployment" käsikirja luvussa lisätietoja
- hakemisto annettu `-prefix" mahdollisuus `kana-install 'voi nyt olla suhteellinen polku.
- poistettu GUI-erityinen ajonaikaisen (`libchicken-GUI) Windows rakentaa
- GUI- ja ei-GUI sovellukset käyttävät nyt samaa ajonaikaisen
- Erikoiset ulkomaisessa toiminto käyttöliittymä on korvattu sisäinen muoto ja syntaksi jotta nimeämistä ja varjostuksen näiden lomakkeiden
- uusi `ja yksityisen-arkiston" vaihtoehto `CSC kokoaa ajettavat kanssa laajennuksesta arkistopolkuun asetettu hakemistoon, josta ohjelma aloitettiin
- 'CSC: hylätty `-W' ja` -Windows "vaihtoehtoja, lisäsi` -gui "kuin alustasta riippumaton vaihto
- 'edellyttävät-laajennus' / `käyttöä" hyväksyy nyt tuonti-tiedot
- käyttäjän määrittämä laajennus-suunnittelijat ja `set-extension-määrittelyksi!" on poistettu
- 'delete-tiedosto [*] ",` nimetä-tiedosto', 'Luo-hakemisto', `tiedostojen kopio", `tiedostojen siirto", `poistaa-hakemisto" ja `muutos-hakemisto" palata argumentti / kohde tiedostonimi menestys
- lisätään puuttuu menettely `kunto-muuttuvan nimeltä" srfi-18 kirjasto yksikkö (Kiitos Jörg Wittenberger)
- `loraus?" toiminto `regex" yksikkö on vanhentunut
- lisätään menettely `scan-panos-linjat" ja `utils kirjaston yksikkö
- lisätty uusia runtime vaihtoehto `-: g", joka mahdollistaa GC vianetsintätietoja
- talteenotto käyttämättömien symbolien "symboli-gc" -tilassa (`-: w ') nyt vain tapahtuu symbolien kanssa tyhjät kiinteistöt-lista li>
- Windows lastaus koodin käännetty [ei] GUI runtime kirjastot epäonnistuu ja tuottaa virheilmoituksen lastaus suoritettavaa liittyy eri runtime järjestelmä
- Windows, GUI kirjastot eivät oikein yhdistää `CSC
- yksikkö POSIX: lisätään suunnannäyttäjäksi `file-muutos-aika"
- banneri näyttää branchname on rakentaa, ellei se "isäntä"
- `-no-install 'vaihtoehto' kana-install 'jätetään huomiotta, kun rakennus / asennettaessa riippuvuudet
- 'kana-Uninstall vie loraus sijaan säännöllinen lauseke argumenttina
- Nimeä uudelleen ja vertailla toiminnot matalan tason makro-määritelmät hyväksyä nyt mielivaltainen s-ilmaisuja ja nimeää / vertaa niitä rekursiivisesti
- 'numero- & gt; merkkijono "käsittelee negatiivinen-numerot emäkset eroavat 10 oikein (kiitos Peter Danenberg)
- poistettu vanhentunut `setup-install-lippu 'ja` setup-monisanainen-lippu "päässä` setup-api' moduuli
- lisätty uusi vaihtoehto `-repository 'to' kana-install '(Kiitos Christian Kellermann)
- poistaa `kana-setup" tynkä ohjelma
- korjauksen `CSC käyttää oikeita kirjasto vahvistaessaan dynaaminen kuormitus polut (Kiitos Derrell Piper)
- poistettu html asiakirjat jakelusta (wiki käsikirja asennetaan nyt)
- kiinteä bugi `jälleenvientiä" joka aiheutti syntaksia ei oikein jälleenviedä
- edellinen toimeksiantoja toplevel muuttuja, joka on erotettu sivuvaikutus vapaa ilmaisuja poistetaan
- kiinteä ikkunat versio `Etsi-tiedostot" (kiitos Jim Ursetto)
- dokumentaation laajennuksia ei ole asennettu automaattisesti `kana-install 'enää
- muuttunut binary versio "4" ja "5", koska uusi runtime kirjastot eivät ole binary yhteensopiva aiempien julkaisujen; tämä tarkoittaa kaikkia munia tarvitse asentaa uudelleen ja nykyisiä ohjelmia kääntää uudelleen!
- lisätä unboxing syötön kääntäjä, joka johtaa osittain dramaattinen suorituskyvyn parannuksia vaarallisia liukulukuja-intensiivinen koodi; unboxing on käytössä optimointi tasolla 4 ja 5
- poistettu lepo-argumentti-vektorin optimointi kuin se voisi ristiriidassa upottamista (kiitos Sven Hartrumpf)
- nimeksi `osoitin-offset" ja `osoitin + 'ja hylätty` osoitin-offset "
- toplevel tehtäviä, joilla ei ole muita sivuvaikutuksia voidaan poistaa, jos voidaan osoittaa, että arvoa ei käytetä (kääntäjä tuottaa varoitus tässä tapauksessa)
- poistettu vanhentunut `-quiet" vaihtoehto `kana -ohjelman
- poistettu vanhentunut `kulkuaikariippuvaisten makrot" ilmoitus
- poistettu vanhentunut `-V2 'ja` -v3 "vaihtoehtoja` CSC ohjelma
- poistetaan vanhentunut `lista-of-toiminto (se on yksinomaan saatavilla` lista-of? "Nyt)
- poistettu vanhentunut `stat -..." toimintoja POSIX kirjasto yksikössä
- poistettu vanhentunut `for-jokainen-line" ja `for-jokainen-argv-line" menettelyjen utils kirjaston yksikössä
- lisätä `fpinteger?" ja `fpabs"
- vanhentunut `määritellä koottu-syntaksi"
- lisätty uusi liukulukuja primitiivejä `fpsin ',` fpcos', `fptan ',` fpasin', `fpacos ',` fpatan', `fpatan2 ',` fpexp', `fplog ',` fpexpt' ja ` fpsqrt "
- raskas puhdistus kelluvien matemaattiset funktiot, joka antaa paljon paremman suorituskyvyn, erityisesti koodi koottu turvallisessa tilassa
- soittamalla `väittävät" yhdellä argumentti osoittaa testattu ilme vika
- eri bugikorjauksia ja puhdistusta li>
Mikä on uusi versiossa 4.2.0:
- kana-asennus on muutettu lajitella kirjaston riippuvuudet topologinen järjestyksessä ja kokeilla vaihtoehtoisia palvelimia jos muna palvelin vastaa virhe.
- suoritettavan pino kokoonpano koodi moduulit on oletusarvoisesti pois käytöstä.
- paljon vikoja on korjattu MinGW rakentaa.
- useita uusia vaihtoehtoja on lisätty kääntäjä ja tulkki.
Mikä on uusi versiossa 3.4.0:
- kääntäjä tukee nyt valikoiva menettelyä profilointia.
- Kaikki tiedot liittyvät menettelyt on siirretty uuteen yksikköön tiedostoja.
- On ollut lukuisia korjauksia Cygwin ja MinGW rakentaa.
- PCRE kylkiäisenä Kana on päivitetty.
Kommentteja ei löytynyt