F1 kompilaatori korduma kippuvad küsimused (KKK)

Original: http://www.f1compiler.com/faq/faq.html

Home

Üldised küsimused

  • Kas see tasuta?
  • Mis on nimi…
  • Mis on deklaratiivne programmeerimine?
  • Kes peaks kasutama F1 koostaja?
  • Kuidas FormulaOne võrrelda Prolog?
  • Kas see tõsi koostaja või tõlgi?
  • Kas FormulaOne avatud lähtekoodiga?
  • Kas FormulaOne joosta Linux?
  • Ma arvan, et ma leidsin vea…
  • Kas ma registreeruma pean?
  • Kas FormulaOne jätkamine Trilogy?
  • See on suur projekt, kuidas ma saan aidata?
  • Mul on küsimus hõlmamata KKK…

Tehnilised küsimused

  • Kui ma kompileerida mu programmi, saan kummaline koostaja vigu…
  • Kuidas levitada käivitatava?
  • Kas mälu prügikoristus?
  • Kas ma saan kasutada koodi kirjutatud teise programmeerimiskeelt?
  • Mis on varjatud lähtefaili?
  • Ma ei kasuta F1 koostaja kui see funktsioon (UTF-8, loop konstrukt, jne) on rakendatud…
  • Edasise arengu…

Kas see tasuta?

Jah. Lisaks ei ole F1-ga loodud programmide autoritasusid ega jooksvate raamatukogude ümberjaotamise piiranguid.

Mis on nimi…

FormulaOne on loogiline programmeerimiskeel, mis põhineb esimesel järjekorra loogikal, võimaldades kirjutada programme, mis kasutavad keele ja loogiliste valemitega sarnast süntaksit/semantikat.

Mis on deklaratiivne programmeerimine?

Deklaratiivse programmeerimiskeele põhiomaduseks on, et programm on mõnes sobivas loogikas teooria. See omadus annab kohe täpse tähenduse keeles kirjutatud programmidele. Programmeerija jaoks tähendab see, et programmeerimine tõstetakse kõrgemale abstraktsioonitasemele. Sellel kõrgemal tasemel abstraktsioon programmeerija võib keskenduda arvutamisele, mitte tingimata selle arvutamisele.

Kes peaks kasutama F1 koostaja?

FormulaOne saab õppida algaja kuid kõige hinnatum kogenud programmeerijad. Kui teil on probleem lahendaja, FormulaOne on unikaalne rakendamise piirangud on hindamatu. Piirangud võimaldada numbriline ja loogiline probleeme lahendada kiiremini, mitme suurusjärgu võrra. Lisaks FormulaOne süntaks viib programme, mis on selge, täpne ja hästi struktureeritud, mis muudab keelt eriti aga Euroopa sobivad infotehnoloogia hariduslikel eesmärkidel.

Kuidas FormulaOne võrrelda Prolog?

Seal on palju maitsed ja rakendused Prolog, nii et see ei ole lihtne vastata. Süntaktiliselt FormulaOne ja Prolog on täiesti erinevad. Sest mitte-Prolog programmeerija on palju lihtsam lugeda ja järgida F1 lähtekoodi kui lugeda ja järgida Prolog lähtekoodi.
Võrreldes tootlus ei ole lihtne, sest puudub ametlik ega laialdaselt kasutatud loogika programmeerimine kriteeriumid. Need vähesed (pigem vananenud) kriteeriumid oleme teadlikud koosneb mõned lihtsad nimekirja manipulatsioonid, mis ilmselt ei võrdlusalus midagi mingisugust tähtsust loogika programmeerimine. Kuna seal on ainult piiratud arv nimekiri operatsioonide enamusest peaks tootma rohkem-vähem sama võrrelda tulemusi. Need kriteeriumid kajastavad võimu CPU rohkem kui midagi muud.
On veel üks viis toimivust võrrelda: lahendada sama probleem erinevate koostajad (kasutades sama CPU) ja võrrelda täitmise ajal. See ei ole päris cut-and-keemiline kas: probleemid peaks olema vähemalt mõnevõrra keeruline oleks mõttekas. Hea kandidaat on probleem nagu Benjamin Franklin maagia ruudud 8×8: Probleem on lihtne sõnastada, et programm on lihtne kirjutada igal deklaratiivne keel, probleem on teada mitmeid lahendusi, kuid leida kõik lahendused ei ole tühine. See võib võtta nädala leida kõik lahendused, nii et see on lihtne mõõta tulemuslikkuse erinevusi. Me kasutame seda probleemi sisemiselt võrdlusalus erinevate FormulaOne väljaanded.
Olles seda öelnud, üks põhjus, miks me valisime nime FormulaOne oli, sest me ausalt tundsin toodame väga kiire kood ja puudus Prolog rakendamise, mis võiks meid ületada.Soovime varundada nõude mõned reaalses maailmas numbrid, nii et kui te olete teadlik kõikidest Prolog Võrdkujuprogrammide, siis palun andke meile teada. Vaata meie toetust lehekülg teavet, kuidas meiega ühendust võtta.

Kas see tõsi koostaja või tõlgi?

Kuigi FormulaOne lähtekood võib sarnaneda skripti keelele, on see täielikult koostatud. FormulaOne on tõeline kompilaator; see genereerib standardseid dünaamilise laadimisraamatukogu DLL-faile (Dynamic Load Library) või standardseid EXE (Executable) faile.

Kas FormulaOne avatud lähtekoodiga?

Ei. Ei ole tõenäoliselt kunagi avatud lähtekood.

Kas FormulaOne joosta Linux?

Meil oli võimalik installida ja käivitada FormulaOne Linuxi abil, kasutades veini 0.9.52. Kuigi meil oli võimalik kõiki näidiskoodiprogramme uuesti kompileerida ja edukalt käivitada, ei saa me praegu soovitada F1 kompilaatori käivitamist Linuxi all. Vein (0.9.52) ei rakenda õigesti erinevaid funktsioone, nagu näiteks kontekstimenüüd, rebar-juhtelemente, ListView-juhtelemente ja üldjuhul IDE-ekraani korrektset redigeerimist. F1-kompilaatori käivitamine käsurea poolt käivitatud veiniga käivitab käsurea shell-terminalis palju veini veateateid. Seda öeldes on olemas suur tõenäosus, et paljud vead kinnitatakse järgmises veini vabastamises.

Ma arvan, et ma leidsin vea…

Kui süsteem ei ole õigesti installitud, jookseb kokku või ei käitu vastavalt dokumentatsioonile, soovitame teil esitada veateade. Me tervitame veateateid ja kõik veateated võetakse tõsiselt. Veateate esitamise eelistatud meetod on kasutada sisseehitatud veateate generaatorit, kasutades F1 IDE-d, kuid saate ka veateate otse kasutada [email protected]. Kui esitate veateate otse, esitage võimalikult palju lisateavet: operatsioonisüsteemi versioon, CPU tüüp ja kõik IDE/kompilaatori üksikute komponentide versioonid, mis on kuvatud dialoogis F1 IDE “About”.

Kas ma registreeruma pean?

Ei. F1 kompilaatori registreerimine ei ole kohustuslik. Registreerimise peamine eesmärk on võimaldada meil jälgida tõsiseid kasutajaid. Registreerimata tarkvara funktsionaalsus on identne registreeritud numbriga.

Märkus: tulevikus kavatseme pakkuda ainult registreeritud kasutajatele teatavaid lisamooduleid (nt sümboolne silur jne). Kui saabub aeg, teatame sellest meie veebilehel. Sa registreerud, saates meile e-posti aadressil [email protected], mille teema on “registreerimine”. Saadame teile tagasi registreerimisnumbri, mille saate sisestada registreerimisdialoogi F1 IDE-s.

Kas FormulaOne jätkamine Trilogy?

Trilogy, programmeerimiskeel, oli algselt loodud Põhja-Vancouveri täielike loogikasüsteemide jaoks 1987. aastal. See põhjustas sel ajal üsna segadust: positiivsed arvustused Jerry Pournelle poolt BYTE-s; ja erinevad artiklid BYTE, PC Week, AI Expert. Veel üks aasta hiljem avaldas vertikaalne tarkvara Trilogy teine äriversioon. FormulaOne kasutab süntaksi ja andmetüüpe, mis on väga sarnased triloogiaga, nii et selles osas võib FormulaOni pidada Trilogy jätkuks.

See on suur projekt, kuidas ma saan aidata?

  • Faili viga aruandeid.
  • Esita proovi koodi.
  • Loo ja esitada kolmanda isiku süsteemi raamatukogudes.
  • Aita meil koos internaliseerimise/lokaliseerimine muude keelte kui inglise.
  • Levitage. Kui te oma veebilehel: link meile. Kui teil on blogi: mainida meile. Kirjutage Wikipedia lehel.

Kui ma kompileerida mu programmi, saan kummaline koostaja vigu…

Nagu praktiliselt kõigi kompilaatorite puhul, võite programmi koostamisel esineda kummalisi vigu. Mis juhtub, on see, et kompilaator tuvastab mingil hetkel vea. Sel hetkel võib kompilaator katkestada kompileerimise või teha haritud vea vea olemuse kohta ja jätkata programmi koostamist. Koostamise katkestamine pärast iga viga võib kaasa tuua üsna masendava kogemuse, nii et kompilaator jätkab koostamist mõnede eelduste alusel. Kui eeldused olid ebaõiged, tekitab järgnev koostamine tõenäoliselt ootamatuid fiktiivseid vigu. Sellepärast peaksite kõige rohkem tähelepanu pöörama esimesele veale. Üsna tihti esimese vea kindlaksmääramine põhjustab kõik muud vead.

Kuidas levitada käivitatava?

Iga käivitatav koosneb mitmest moodulist. Kõik need peavad olema jaotatud, et käivitatav programm saaks sihtsüsteemis õigesti töötada. Jaotus koosneb kõigist kasutaja kirjutatud moodulitest, F1 Run Time Library (F1RTL.DLL) ja GMP (GNU Multi Precision aritmeetiline raamatukogu, libgmp-3.dll). Tulemuslikkuse huvides on GMP ehitatud erinevate protsessorite jaoks. Rakendatava faili levitamisel peaksite ideaalis sisaldama libgmp-3.dll, mis sobib kõige paremini sihtsüsteemi CPU-ga. Seda saab teha installiskriptiga, mis tuvastab rakenduse installimisel CPU ja valib sobiva libgmp-3.dll. Kui jõudlus ei ole probleem, saate oma rakenduse lihtsalt levitada libgmp-3.dll-ga, mis on ehitatud Pentium CPU-le või “üldisele” libgmp-3.dll-le. Üldiselt on üsna ohutu eeldada, et sihtsüsteem on ühilduv Pentiumiga. Ideaalis installige oma rakendus installeri abil, näiteks InstallShield, Microsoft MSI või Nullsoft Scriptable Install System (NSIS).

Märkus: Alustades FormulaOne Vabastage 41D on FormulaOne IDE jaotus sisaldab  NSIS (Nullsoft Scriptable Install System) osana asukohti. Pärast luua eraldiseisev käivitatava kasutaja saab nüüd luua setup fail, mis võimaldab ümber jaotada/paigaldada oma/enda käivitatav teisi arvuteid. F1 IDE loodud vaikeseadistuseks faili loob ühtse levitatav faili, mis võimaldab kasutajal paigaldada/eemaldada käivitatava, valikuliselt luua töölaua ja/või menüü otseteed. Installiprogramm installida ka sobivaima GMP raamatukogu sihtseadmes põhineb avastatud CPU. Täpsemat samm-sammult juhiseid ekraanipilte võtke Kuidas luua jaotatav taotlemine.

Kas ma saan kasutada koodi kirjutatud teise programmeerimiskeelt?

FormulaOne programmi saab helistada rutiin asub moodulid koostatud teiste koostajad, pakkudes nad kasutavad kas “C” kutsudes konventsiooni või Microsoft_stdcall konventsiooni. Tänu mittestandardsete kasutamine virna F1 koostaja, praegu ei ole üldiselt võimalik mooduleid koostatud teiste koostajad helistada rutiin koostatud F1 koostaja. Kuid me arvame koostalitlusvõime moodulid teistes keeltes kirjutatud väärib pidevat tähelepanu, vt lähemalt meie plaane  edasiseks arenguks.
Märkus: Alustades F1 vabastamist 42 on võimalik helistada F1 procs/subrs moodulitest ei koostatud F1 koostaja.

Mis on varjatud lähtefaili?

FormulaOne linker võimaldab mooduli täieliku lähtekoodi lisada kompileeritud moodulis. See võib olla kasulik koostatud moodulite levitamisel või arhiveerimisel.

Kas mälu prügikoristus?

Kõik mälu vaja programmi täielikult haldab koostaja. Mälu eraldamise/deallocation on automaatne ja tavaliselt programmeerija ei pea olema mures ta. Kõik eraldatud mälu saab lõpuks deallocated kui see ei ole vajalik. Vaikimisi mäluhaldus algoritm on väga tõhus madala õhu-ja kirjeldatakse detailsemalt FormulaOne keeles kasutusjuhend. Siiski võib esineda olukordi, kui lõpuks ei ole piisavalt kiiresti ja programmi otsa kõik saadaval mälu enne mälu deallocated. Sel juhul saate kompileerida programmi agressiivsema prügi kogumine, kasutades “Settings->Compiler->Enable Garbage Collection” (Seadistused->Koostaja->Luba prügi kogumine). See säte alistab default “laisk” Prügikoristus ja põhjustab mälu deallocation niipea kui võimalik. Pange tähele, et see ei ole probleem tõsi predikaadid: tõsi predikaadid tasuta kasutamata mälu automaatselt kõrvalproduktina tagurdusmeetodi.

Ma ei kasuta F1 koostaja kui see funktsioon (UTF-8, loop konstrukt, jne) on rakendatud…

Tehniliselt ei ole tegelikult küsimus, rohkem nagu ultimaatumi, kuid õiglane piisa. Kuigi see kõlab nagu “Ma ei kasuta C++ kuni ta rakendab tagurdusmeetodi”  või “Ma kasutan koostajale ainult siis, kui see on automaatne prügikoristus” või “Ma ei kasuta Java kuni see toetab native 512bit täisarvud”. Asi on, ükski mitusada programmeerimiskeelte sisaldab kõiki võimalikke funktsioone. Olles seda öelnud, me tervitame uusi ideid. Mõned meie uusi ideid me kaaluda upcomming väljaanded võib leida meie lehel edasise arengu.


AddThis Social Bookmark Button

Locations of visitors to this page

Viimati uuendatud: 22. mai 2015