GithubHelp home page GithubHelp logo

lguzzon-scratchbook / llvm-pascal-1 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wanderlan/llvm-pascal

0.0 1.0 0.0 62.21 MB

Automatically exported from code.google.com/p/llvm-pascal

Pascal 58.51% Inno Setup 0.30% LLVM 0.09% Makefile 0.15% C 8.62% Lex 0.72% Yacc 2.20% HTML 22.96% CSS 5.61% JavaScript 0.86%

llvm-pascal-1's Introduction

LLVM-Pascal 2010.9.24 Pre-Alpha IV

Principal implementação deste release: Scanner e Parser

Home: http://llvm-pascal.googlecode.com
Forum: http://groups.google.com/group/llvm-pascal
License: BSD, http://www.opensource.org/licenses/bsd-license.php

- Por enquanto a "compilação" só faz análise léxica e sintática.
- Compilável com qualquer Delphi até versão XE e Free Pascal 2.4.
- Fonte extremamente pequeno e simples usando Orientação a Objetos com Object Pascal.
- "Compila" fontes do dialeto Delphi até a versão XE, não suporta operator overload no dialeto Delphi.
- "Compila" fontes do Lazarus até a versão 0.9.28.2 e Free Pascal até a versão 2.4, 
   suporta macros, generics, operator overload e literais binários.
- "Compila" ~148 klps (mil linhas por segundo) em um Intel E2200 Dual Core II 2.2 GHz com 2 GB de RAM e Windows XP SP3, 
   compilado com Turbo Delphi, com FPC 2.4 ~98 klps.
- Parte dessa diferença se refere às funções Pos, PosEx, UpperCase e LowerCase que são usadas no compilador, 
  que em Delphi são implementadas em Assembly e em FPC são implementadas em Pascal.
- O LLVM-Pascal substitui essas funções, apenas se compilado com FPC, por versões otimizadas em Pascal do site FastCode, 
  o FPC então vai para ~118 klps e o Turbo Delphi para ~147 klps usando FastCode.
- A performance não é tão boa (~95 klps) em Delphi 2009/2010/XE, pois nosso compilador é baseado em AnsiStrings e não em Unicode, gerando muita conversão na VCL. 
- "Compile" seu projeto com LLVM-Pascal e reporte suas questões no fórum: http://groups.google.com/group/llvm-pascal

Para "compilar" use:
LLVM_Pascal *.pas


linha de comando para comparação de performance: LLVM_Pascal "C:\Arquivos de programas\Borland\BDS\4.0\source\*.pas" -fi"C:\Arquivos de programas\Borland\BDS\4.0\source\dunit\contrib\dunitwizard\source\common\" -v1 -vmE130,E139

llvm-pascal-1's People

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.