TPC16 Compiler Source Code 1.0

Licentie: Gratis proefperiode ‎Bestandsgrootte: 530.39 KB
‎Gebruikersbeoordeling: 4.6/5 - ‎5 ‎Stemmen

Turbo Pascal compiler geschreven in Turbo Pascal. Dit is niet de "original" Borland broncode van de Turbo Pascal omdat deze niet in Pascal is geschreven. Dit is TPC16, een Turbo Pascal compatibele compiler geschreven vanaf nul. Het is volledig broncode compatibel met de Borland Turbo Pascal 7.0 command line compiler TPC. Exe. Dit betekent dat het dezelfde syntaxis gebruikt en EXACT DEZELFDE gecompileerde eenheden en 16-bits code voor x86 genereert. Deze broncode toont al het moois van de Pascal programmeertaal en onthult alle trucs die nodig zijn om een snelle en compacte compiler te bouwen voor elke taal, niet alleen Pascal. Met deze Turbo Pascal single pass compiler broncode krijgt u: Architectuur van symbooltabellen, Inzicht in Turbo Pascal-eenheidsstructuur, Ultrasnelle scanner, Voorbeelden van hash-tabellen voor snel zoeken naar zoekwoorden, overvloed aan gegevensstructuren die nodig zijn in elke compiler, Algoritmen voor het omgaan met id's, scopes en eenheden, Parser om een reeks tokens te analyseren en om de syntaxis van Pascal te controleren, Voorbeeld van compiler foutrapportage, Begrip van uitdrukkingen en berekeningen, Voorbeelden van willekeurige uitdrukkingsverwerking en codegeneratie, Algoritmen voor het produceren van complexe code met beperkte reeks registers, Voorbeeld van in-line assembler compiler, Voorbeeld van tussenliggende codestructuur, Het optimaliseren van codegenerator, Begrip van het importeren van objectbestanden, Optimaliseren linker met uitstekende aanpak om referenties op te lossen, Een werkende compiler compatibel met Borland Turbo Pascal 7 , Diep begrip van de Turbo Pascal compiler internals en meer. Het belangrijkste kenmerk van dit pakket is de praktische implementatie van verschillende algoritmen samen met bewezen datastructuren. Een succesvolle compiler implementatie is vooral afhankelijk van data structuren en algoritmen gebruikt. Daarom kan de bron van TPC16 als inspiratie worden gebruikt voor het implementeren van complexe algoritmen voor uw compiler. Het beste e-book over compiler design.

versiegeschiedenis

  • Versie 1.0 geplaatst op 2009-10-22

    EULA - Licentieovereenkomst voor eindgebruikers



    Licentieovereenkomst broncode

    Behalve waar anders vermeld, alle documentatie, broncode en software opgenomen in de TPC16 pakket is auteursrechtelijk beschermd door Igor Funa. Deze licentieovereenkomst is een juridische overeenkomst tussen u (een individu of een enkele entiteit) en Igor Funa voor het hierboven geïdentificeerde TPC16-softwareproduct, dat bijbehorende softwarecomponenten, broncode, media, gedrukt materiaal en online of elektronische documentatie (Software) kan bevatten. Door de Software te installeren, te kopiëren of anderszins te gebruiken, stemt u ermee in gebonden te zijn aan de voorwaarden van deze overeenkomst. Als u niet akkoord gaat met de voorwaarden van deze overeenkomst, installeer of gebruik de Software niet.

    Definities
    Voor de toepassing van deze overeenkomst gelden de volgende definities:

    * "Software" het specifieke softwareproduct dat door de licentiehouder is gekocht bij Igor Funa.
    * "Broncode" bevat computerprogrammeercode of computerinstructies die nodig zijn om de Software samen te stellen.
    * "Afgeleide Werken" :: alle softwareprogramma's die door de licentiehouder zijn ontwikkeld en die wijzigingen bevatten of bevatten van een deel van de Broncode, en met inbegrip van eventuele revisie, wijziging, vertaling (inclusief compilatie of recapitulatie door de computer), abridgment, condensatie, expansie of enige andere vorm waarin Broncode kan worden herschikt, getransformeerd of aangepast.
    * "Purpose" het creëren van bugfixes, correcties, verbeteringen, revisies, wijzigingen en aanpassingen van Broncode en toevoeging van nieuwe user interfaces, features en functionaliteit aan de Software.

    LICENTIENEMER RECHTEN EN BEPERKINGEN

    1. Door deze overeenkomst te aanvaarden en onder voorbehoud van de hierna vermelde beperkingen en tegenprestatie, verleent Igor Funa de licentiehouder een niet-afdoende, niet-overdraagbare, eeuwigdurende, wereldwijd recht op:
    1.1 zoveel exemplaren van de broncode gebruiken en reproduceren als redelijkerwijs alleen nodig is voor de uitoefening van de krachtens deze overeenkomst verleende rechten;
    1.2 Afgeleide werken van de broncode voor het doel wijzigen en creëren;
    1.3 gebruik, reproduceren, reproduceren, verkopen (via sublicentie), distribueren (via sublicentie), uitvoeren of anderszins overdragen (via sublicentie), rechtstreeks of via distributeurs of wederverkopers, Afgeleide Werken, alleen in objectcodeformaat, die in overeenstemming zijn met het doel en onderworpen zijn aan de rapportage- en auditbepalingen van de overeenkomst.
    2. Er wordt geen recht verleend aan de licentiehouder om derden toe te staan, toe te staan, te machtigen, te licenties geven of te sublicentieren om de Broncode in te zien of te gebruiken.
    3. De licentienemer krijgt geen recht om de broncode te verkopen, te distribueren, beschikbaar te stellen, te publiceren of anderszins over te dragen, tenzij bepaald in punt 1. Boven.
    4. De licentiehouder mag de broncode niet gebruiken voor iets anders dan het beoogde, legitieme en juridische doel ervan.
    5. De licentienemer mag de broncode op geen enkele wijze gebruiken die niet specifiek is toegestaan op grond van deze overeenkomst.
    6. De voorwaarden van deze overeenkomst geven de licentiehouder geen recht op ondersteuning of onderhoud van Igor Funa met betrekking tot de broncode.

    VERTROUWELIJKHEID EN EIGENDOM

    Licentiehouder is het ermee eens en erkent dat de Broncode eigendom, waardevol en niet algemeen bekend is bij het publiek. De licentienemer stemt ermee in dat hij op redelijke wijze de vertrouwelijkheid van de Broncode zal handhaven en geen onbeperkte toegang zal verlenen. Licentiehouder mag de broncode niet distribueren naar iemand anders dan werknemers en softwareontwikkelaars van de organisatie van de licentiehouder of externe contractanten die namens de organisatie van licentiehouders werken met een behoefte om dit te weten. De licentiehouder kan wettelijk verantwoordelijk worden gehouden voor elke inbreuk op intellectuele eigendomsrechten die wordt veroorzaakt of aangemoedigd door licentienemers die zich niet aan deze overeenkomst houden.

    Disclaimer

    Deze software, broncode en eventuele ondersteuning van Igor Funa worden geleverd ALS IS en zonder garantie, express of impliciet. Igor Funa wijst specifiek alle impliciete garanties van merchantability en fitness voor een bepaald doel af. In geen geval zal Igor Funa aansprakelijk zijn voor enige schade, inclusief maar niet beperkt tot verloren winsten, verloren spaargeld of enige incidentele of gevolgschade, hetzij als gevolg van verminderde of verloren gegevens, software of computerstoring of enige andere oorzaak, of voor enige andere claim door de gebruiker of voor een claim van derden.

Programmadetails