![]() |
|||||||||||||||||||||
|
|||||||||||||||||||||
|
About The YUKON ProjectThe Yukon Project is the result of more than 20 years of Xbase programming experience. I have started my Xbase career with dBaseIII/Clipper 87. Later I have written both, the Xbase++ documentation and the xHarbour documentation, giving me good confidence in knowing what the Xbase programming language is all about. During my occupation as author of the Xbase++/xHarbour documentations, I have learned the needs of Xbase programmers in the ever changing IT world: Programmers want to be able to use all features of the operating system with their favorite programming language, Xbase. That’s what the Yukon project is aiming at: to give an Xbase++ programmer access to ALL features of the Windows platform SDK in the most comfortable and painless way - using PRG code only. Most of The Yukon Project is implemented in PRG code, supported by few C-API functions. It is obvious that functional wrappers within a single 3rd party product implementing all features of the Windows platform SDK would simply exceed normal memory limits. For example: a 17 MB DLL would be required to declare Xbase++ classes that maintain only the structures declared in the Windows platform SDK, not to speak of implementing DLLFUNCTIONs for each available API function. For this reason, The Yukon Project pushes "dynamic programming" to an extreme. It splits all areas of the Windows platform SDK accessible by the Xbase++ programming language into bits and pieces, and groups them in individual DLL files. An Xbase++ programmer is then given the alternative to LOAD or to DECLARE. LOAD means: data required for an item can be loaded and released at RUN time. Loaded data is cached. The cache mechanism involved makes repeated access to loaded data almost as efficient as to compiled data. LOAD means also: a programmer is relieved from declaring an item in his/her PRG code, thus saving a programmer's time and raising productivity. DECLARE means: an item can be declared in PRG code. It is created at COMPILE time, and stays in memory until an application ends. | ||||||||||||||||||||
| Copyright © Dr. Hannes Ziegler 2008 | |||||||||||||||||||||