文件名称:PaxCompiler_v2.1_27nov08 full source
文件大小:296KB
文件格式:ZIP
更新时间:2011-12-19 06:44:57
pax compiler source
paxCompiler is an embeddable compiler of the Object Pascal programming language. The key features of the paxCompiler are: The compiler generates machine code for Intel compatible processors (IA-32 architecture). It is possible to use the compiler as a scripting engine. You can embed the compiler into host application, register host-defined types, routines, variables and constants for the engine, read/write script-defined variables, call script-defined functions etc. You can save/load compiled scripts to/from a stream. The compiler was initially written in Borland Delphi as a set of Delphi components. TPaxCompiler, TPaxProgram and TPaxPascalLanguage are Delphi components that allows you to embed the paxCompiler into Delphi, Kylix or Borland C++ Builder application so you can customize and extend the application without having to recompile it. Source code of paxCompiler is compatible with Free Pascal 2.0. paxCompiler, implemented as paxcompilerlib.dll, can be used for scripting Microsoft Visual C++ applications. The compiler supports Object Pascal language based on the Delphi 7 standard. Script-defined functions support register (Borland fastcall), cdecl, stdcall, safecall, pascal and msfastcall (Microsoft fastcall) calling conventions. The default calling convention is stdcall. (You can change it by means of TPaxPascalLanguage.SetCallConv method). COM support. TPaxCompilerDebugger and TPaxCompilerExplorer components implement debugger (breakpoints, call stack, watches, step over, trace into, run to cursor, pause) and code explorer capabilities. You can import host-defined types with paxCompiler importer. You can create stand alone executable files. paxCompiler engine is thread safe. The roadmap of the compiler includes: JavaScript compiler, Basic compiler and C compiler, cross-language programming, built-in assembler.
【文件预览】:
PAXCOMP_CONSTANTS.pas
PaxEval.pas
PAXCOMP_INVOKE.pas
PAXCOMP_SYMBOL_PROGRAM.pas
PaxProgram.pas
PAXCOMP_PARSER.pas
PaxInvoke.pas
PAXCOMP_PASCAL_SCANNER.pas
PAXCOMP_BYTECODE.pas
paxcomp_lazaruz.pas
PAXCOMP_EVAL.pas
PAXCOMP_PASCAL_PARSER.pas
PAXCOMP_STDLIB.pas
PAXCOMP_PE.pas
PAXCOMP_KERNEL.pas
PaxCompilerDLL.pas
PAXCOMP_EMIT.pas
PAXCOMP_PAUSE.pas
PAXCOMP_SCANNER.pas
PaxCompilerRegister.pas
PaxRegister.pas
PAXCOMP_CLASSLST.pas
PAXCOMP_SYMBOL_REC.pas
PaxCompilerExplorer.pas
PAXCOMP_SYMBOL_TABLE.pas
PAXCOMP_ERROR.pas
PAXCOMP_BASESYMBOL_TABLE.pas
PAXCOMP_HOSTCLS.pas
PAXCOMP_VAROBJECT.pas
PAXCOMP_OFFSET.pas
PaxCompiler.def
PAXCOMP_SYS.pas
PaxCompilerLib.dpr
PAXCOMP_LABEL_STACK.pas
PAXCOMP_MODULE.pas
PAXCOMP_EVENT.pas
PAXCOMP_DISASM.pas
PAXCOMP_HEADER_PARSER.pas
PAXCOMP_MAP.pas
PAXCOMP_EXTRASYMBOL_TABLE.pas
PAXCOMP_RTI.pas
PAXCOMP_FORBID.pas
PAXCOMP_PROG.pas
PAXCOMP_OLE.pas
PAXCOMP_VMT.pas
PAXCOMP_LOCALSYMBOL_TABLE.pas
PaxCompiler.pas
PAXCOMP_TRYLST.pas
PaxCompilerDebugger.pas