User:PascalDragon

From Free Pascal wiki
Revision as of 18:49, 13 February 2011 by PascalDragon (talk | contribs) (Added my own user page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Hi! My name is Sven, I'm a Free Pascal user and contributor from Germany and these are my current FPC/Lazarus related projects:

ports

  • Native NT: This port allows to write early user space applications, sub systems and device drivers for Windows NT based systems (NT, 2000, XP, 2003, Vista, 2008, 7).
State: Base RTL works nearly completely
next steps:
  • enable process execution, threading and utilize NT's exception handling
  • test the compiler on Native NT
  • implement FindFirst/FindNext
  • get units crt, keyboard, video, graph working
  • get all Pascal only units in packages working
  • get the textmode IDE working
  • MINIX: MINIX is a Unix-like operating system that is based on top of a microkernel originately developed by Andrew S. Tanenbaum. All device drivers are running in usermode and communicate using IPC.
State: working on implementation in compiler

current projects

  • External thread variables collector for Windows: This is needed for Windows systems (Win32, Win64, WinCE) to allow the initialization of the RTL for external threads. External threads are threads that are not created by BeginThread (TThread uses BeginThread). Although work is underway to implement Thread Local Storage in FPC, the collector will be needed for older systems (Win9x) and maybe WinCE as those don't implement Thread Local Storage.
See also this bug report
State: nearly done
  • Class/record helpers: Delphi 2006 (or even 2005) introduced so called class and record helpers which allow to extend the scope the compiler uses when searching for symbols (methods primarily).
The work is done in a branch
State: Some examples are working, but I run into a dead end and need to completely rework my implementation (which is nearly done, so normal development can continue)

planned projects

  • Support for Attributes and extended RTTI introduced with Delphi 2009
  • Support for contracts (ensure, require, invariants) introduced by Oxygene (Delphi Prism)
  • Maybe implement an oxygene syntax mode
  • Support for native linking with C++ classes (aka finish the cppclass concept)