1 / 21

”Open Source Code Management” Morten Kromberg Dyalog User Conference 2006

Learn about the benefits of storing Dyalog source code in text files and how to effectively manage and integrate it with popular development tools. Explore the use of scripts as units, component development, version control, and more.

ricek
Download Presentation

”Open Source Code Management” Morten Kromberg Dyalog User Conference 2006

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ”Open Source Code Management” Morten Kromberg Dyalog User Conference 2006 Version 1 October 2006

  2. A Few Words about V11.0 Presentations Today • As you may have noticed, Version 11.0 was a little late... the BIG news about it is that it is now ”out” (for 32-bit Windows) • 64-bit Windows, Windows Mobile 5, AIX, Linux and Solaris all to follow • 11.0 still has a few bugs but Dan, Nicolas and Beta Testers have done a good job • We are still ramping up our QA, and the next release will be even better • Due to the delay, there are few NEW ”technical news sessions” this year Web Applications at Dyalog ’06

  3. A Few (more) Words about V11.0 Presentations Today • At 13:45 today, Geoff Streeter is doing an updated presentation on 64-bit Dyalog APL • At 14:30, John Scholes is more or less repeating last years presentation on non-OO language enhancements in v11 • The OO tutorial is being run as two full-day workshops by Dan Baronet (Mon+Fri) Web Applications at Dyalog ’06

  4. A Few (more) Words about V11.0 Presentations Today • I suspect John Daintree is going to show some new uses of v11.0 to us tonight • Nicolas Delcros is talking about his first project at Dyalog at 14:30 today: An experimental port of the Linux product to ”WineLib” • I will now try to present some ideas on source code management which have resulted from working with version 11.0 Web Applications at Dyalog ’06

  5. Introduction • In version 11.0, Classes and Namespaces have a ”script” form (returned by ⎕SRC) • This means that a group of related code (and constants) can easily be treated as a unit • In particular, the script can be written to a Unicode File • This allows a number of new ways of working... Web Applications at Dyalog ’06

  6. Let’s take a look at a classical APL Application: Web Applications at Dyalog ’06

  7. Developing ”Components” • LinReg is a nice application, but if I want to use it as a component in my system(s), I have to copy it around the place • Maintaining the source in a single, easily-editable location is tricky • Source code management systems exist, but are proprietary, closed ”black boxes” • We propose a new beginning based on Unicode text files • Let’s examine how this might work... Web Applications at Dyalog ’06

  8. S A L T = Simple APL Library Toolkit • SALT is an experimental tool, intended to provide ”bare bones” support for source in text files • SALT uses an undocumented callback on the Editor object to save changes immediately • As we have seen, SALT provides rudimentary version control • Now, imagine that we want to build a stand-alone application... Web Applications at Dyalog ’06

  9. S A L T = Simple APL Library Toolkit • We have seen that ”SALTED” files allow us ”zero footprint” use of components • We can embed our components in simple stand-alone applications • We can do simple versioning • We can use non-APL development tools like ”CompareIt!” if they support Unicode • How else can we use our component? Web Applications at Dyalog ’06

  10. How Else Can we Use it? • An Excel Graph? Web Applications at Dyalog ’06

  11. Other uses for Script Files... • A Web Page? • The ”Wild Web Server” is an HTTP Server written entirely in Dyalog v11 by Stefano Lanzavecchia • Support for ”APLS” files was added by myself and Nicolas Delcros since Wednesday • It is perhaps the strongest testament to the value of OO and APL code in scripts to date Web Applications at Dyalog ’06

  12. Other uses for Script Files... • How about a C# GUI application? Web Applications at Dyalog ’06

  13. More about SPICE • A few more words about SPICE • SPICE is an experimental command line extension to the Dyalog Session • It looks in ”classes\spice” and tries to load all the ”.dyalog” files in this folder • Let’s examine a sample SPICE command • The intention is to make it really easy to share development tools Web Applications at Dyalog ’06

  14. Conclusion • Storing Dyalog source code in text files has many benefits, in particular • Easy integration with many popular development tools • We can e-mail code to each other • We can easily share development tools Web Applications at Dyalog ’06

  15. Conclusion • Scripts are especially practical when combining APL with other tools, like • ... Building web pages • ... Embedding Dyalog within Visual Studio • ... A tool like SALT ensures that changes get written back to the source right away Web Applications at Dyalog ’06

  16. Conclusion • As with the Object Oriented features themselves, I would not recommend that you immediately rewrite your system • Please Experiment with it, at least look at the samples we distribute • In your own apps, it is most useful for (new) components used in many places • ... Or if a large team need to put something together from small pieces Web Applications at Dyalog ’06

  17. Conclusion • Source Code Management is an important topic which we will continue to focus on • We aim to complete SALT & SPICE by Christmas • Even smoother integration with Visual Studio will probably be a goal for 11.1 Web Applications at Dyalog ’06

  18. Problems Left to Solve include... • Dependencies between SALTed modules (”using” statement”) • Classes spread across more than one file? • Making SALT extensible so people can easily add commands or manage special meta-data inline in scripts • Should SALT versioning be withdrawn (people can use other Version Control tools?) Web Applications at Dyalog ’06

  19. Call to Arms! • Dyalog will invest in developing new libraries of modular components using an ”Open Source” model • SALT, SPICE and the ”Wild Web Server” are our pilot projects • We invite you all to help provide a new generation of tools for us, and for future generations of APL users Web Applications at Dyalog ’06

  20. Our Commitment • Dyalog aims to provide a web-based repository for open-source projects (probably using SubVersion) • We will clean up, document and publish ”recommended” solutions • There will also be a ”less managed” section • Prepare to contribute! Web Applications at Dyalog ’06

  21. Thank You! Thank You(in advance ) Web Applications at Dyalog ’06

More Related