2023 Annual Report |
Overview
The Medley Interlisp Venture has made important progress towards its targets of preserving, extending, and documenting the “expertise” of Interlisp for now and for the long run. This annual report highlights our achievements and ongoing efforts.
Key Accomplishments
We’ve structured our work round venture targets: decrease boundaries to entry, adapt to fashionable environments and person expectations, full “work in progress”, show functions in-built and for the system.
Decrease Boundaries to Entry
We wish to enable newcomers to expertise the system and ease of use with out advanced setup and configuration, in order that extra people can take part.
- On-line.Interlisp.org: The net.interlisp.org web site supplies a fast and straightforward method for customers to strive Medley with none set up or setup. It allows any person to run the complete Medley expertise throughout the context of their browser.
In 2023, we improved the preliminary model of on-line.interlisp.org and started to draw a person base. Between 11/15/2022 and one 12 months later: 187 customers registered on the location, resulting in 1522 distinctive Medley classes. Unregistered customers (i.e., visitor logins) accounted for a further 1971 distinctive Medley classes.
- Historic Interlisp On-line: As an extension to on-line.interlisp.org, we’ve applied a proof of idea that runs historic variations of Interlisp (Concord, Intermezzo, Koto, and so forth.) in a fashion just like the Medley classes. This proof of idea relies on the Xerox Dandelion emulator (named DarkStar) developed by the (now closed) Dwelling Laptop Museum in Seattle. Our intention is to maneuver this venture from proof of idea to full implementation within the subsequent 12 months.
- Operating within the browser: Just lately, we’ve been exploring the potential for utilizing current developments within the “Net Meeting” emulator to run Medley domestically in a browser. There stay important points we might want to handle, however this can be a very promising route.
Platforms, Releases, Builds, Automation, Installers
- Help for SDL2: We added to Medley assist for SDL2 which may now be constructed from supply. Additional work is required to supply acceptable binaries within the software program releases. The SDL2 backend is helpful for working Medley on working programs the place X-Home windows will not be instantly accessible, comparable to Home windows, or which, being primarily based on Wayland, could degrade the efficiency of X-Home windows functions like Medley. Examples of the latter are Raspberry Pi OS Bookworm and later and ChromeOS.
- Help for working ‘natively’ on Home windows: Beforehand, the one technique to run Medley on Home windows was by way of the Medley Docker container or by way of Home windows System for Linux. Each of those require important setup and experience that aren’t frequent for Home windows customers. This 12 months, we developed ‘native’ Home windows assist for Medley (primarily based on Cygwin and SDL2) that’s far more appropriate with the abnormal setup and practices of Home windows customers.
- Higher Help for AArch64: We prolonged the construct scripts of the Maiko digital machine to compile and run Medley on the AArch64 platform below Raspberry Pi OS Bookworm and later. Now Maiko can generate loadups on this platform too.
- Construct and Launch Automation: We accomplished the duty of automating in GitHub Actions the construct and launch course of for all main parts of Medley together with Maiko, Medley, Notecards and On-line. These automations had been synchronized, to the extent potential with the corresponding guide construct, loadup and launch duties. Automated releases had been set to run Weekly.
- Installers for Main Platforms: Beforehand, putting in Medley on most platforms was a multi-step job, usually requiring some extent of expertise with varied of the platforms’ administrative instruments. We developed ‘single step’ installers for MacOS, Home windows (native), Home windows working WSL, Debian-based Linux, and for different Linux distros. This makes the duty of putting in Medley simple for customers who wish to shortly and simply discover Medley.
- New Startup Script: We developed a brand new, extra complete script for beginning up Medley on all platforms. The script consists of embedded documentation. It makes the duty of configuring, beginning up and managing Medley situations clearer and extra simple in most circumstances.
- Revamp ‘Loadup’ Scripts: Loadup is the method of constructing a brand new picture/launch of the Medley Lisp code. We revamped the scripts that run the loadup course of to make them extra internally constant, simpler to take care of and to synchronize them with the automated loadups in our GitHub Actions for constructing releases. The load course of was not basically modified.
Medley Software Enhancements
Whereas Medley had assist for Widespread Lisp constructs, the extension of Interlisp instruments to using what advanced as the usual for Lisp – “Widespread Lisp” – was incomplete. Our aim has been that Medley instruments ought to work as effectively or higher than they did for Interlisp alone. This was work “in progress” within the Nineteen Nineties, but it surely wasn’t full and considerably buggy. Some notable additions had been applied.
- HELPSYS prolonged: HELPSYS is the Interlisp instrument which seems to be up and shows the details about an Interlisp perform within the Interlisp Reference Handbook. To assist us within the improve of our Widespread Lisp implementation, HELPSYS was prolonged to lookup within the Widespread Lisp HyperSpec, and likewise extra inner Medley documentation.
- TEdit Redone: Enhancements to our current textual content editor in preparation for higher Unicode assist and to enhance system effectivity, reliability, and maintainability. This work included finishing and debugging the subroutine-stubs for ingesting Xerox Alto’s Bravo-format information, in order that legacy paperwork can now simply be transformed to fashionable codecs (PDF).
- PDFStream: Medley has a local imagestream implementation for producing PostScript®-format hardcopy information, but it surely doesn’t (but) embrace code for producing or displaying PDF information. As an interim answer, an imagestream was outlined to create PDF information not directly, by first producing a PostScript file inside Medley after which executing a UnixUtils shell command to run an accessible PostScript-to-PDF Unix utility (e.g., Ghostscript’s ps2pdf). In the same method, the Medley Filebrowser’s “See” possibility was prolonged in order that PDF information are opened robotically in a separate window by a resident PDF viewer (Preview, Acrobat…). Filebrowser robotically converts PostScript information to PDF in order that they will also be seen.
- UnixUtils: Within the final 12 months we enhanced the set of instruments that permits Medley to succeed in into its surrounding platform to perform duties that aren’t accessible (and too in depth to implement) in Medley. For example, the ShellBrowse perform will open the required URL inside a browser working on the host platform. Equally, ShellOpen can be utilized to open a PDF file utilizing no matter PDF viewer is resident on the host platform.
- GITFNS (use of Git and GitHub) prolonged: Appreciable effort went into the combination of Interlisp File Supervisor and GitHub, together with a menu-driven interface to evaluating Lisp supply information on a function-by-function foundation. This facility is essential to the way in which the system manages the “residential model” improvement instruments of Interlisp with GitHub.
Number of Points Closed and PRs Merged
The venture improvement is managed by use of GitHub. There have been 216 points for the reason that starting of 2023, 69 of which closed, though lots of these had been web site points. A number of the points led to 141 Pull Requests over the identical time span, 132 of which merged. We proceed to clean a few of the tough edges of utilizing the Interlisp programming instruments with Widespread Lisp appropriate features.
We’ve actively engaged with the Lisp and Software program Preservation communities, fostering collaboration and data sharing.
Web site Enhancements
The Interlisp.org web site continues to evolve. Our major aim over the past 12 months has been to make clear our messaging and evolve the web site to assist it. We’ve targeted on including content material and redeveloping the location making content material simpler to seek out. In parallel we’ve labored to make sure our web site is listed permitting net searches on topics associated to Interlisp and Medley to direct customers to acceptable content material. Work on search optimization has additionally enhanced the inner web site search capabilities. Efforts to enhance the Interlisp bibliography proceed throughout each the Zotero web site holding the bibliographic materials and throughout the Interlisp web site.
- Content material Group and Accessibility: In 2022, a primary try at reorganizing the web site was accomplished. During the last 12 months, we continued to revise and refine what and tips on how to current materials on our web site. Adjustments are pushed by new and improved content material in addition to enhancements in our understanding of the story we have to inform. The end result has been main enhancements in web site navigation. We proceed to discover and work on new strategies of enhancing our story telling. Work in progress features a carousel on the touchdown web page which is able to present snapshots representing totally different aspects of the Medley venture.
- Bibliography: The web site illustration of the bibliography was reworked offering a cleaner interface and entry to extra particulars on every publication. As well as, GitHub’s automation instruments had been leveraged to make sure that the web site’s presentation of the bibliography is synced with the grasp Zotero copy each day. Work continues on organizing the Zotero database. Efforts have targeted on cleansing up particular person entries and standardizing our illustration of content material. Going ahead this effort will proceed together with efforts to enhance looking and filtering content material.
- Search Engine Optimization: Within the final 12 months we tracked down and eradicated nearly all of the inbound hyperlink errors. We tried to make sure all beforehand printed hyperlinks had been remapped to an acceptable web page and 404 errors had been minimized.
- Customized Search: We improved search throughout the Interlisp.org web site extending it to past simply web site supplies to incorporate content material printed on our GitHub web site. Searches now cowl nearly all of the artifacts created by the venture.
Displays
We’re persevering with to unfold details about the supply of Medley by technical displays. This 12 months, our crew introduced three talks on Medley Interlisp.
- BALISP: In March 2023, we introduced a dialogue of the venture’s efforts on restoring and modernizing Medley Interlisp to the Bay Space Lisp (BALISP) meetup group. The slides are available and the speak was recorded.
- SPN Thought Workshop: On November 2, Larry Masinter participated within the Software program Preservation Community’s Thought Workshop; we proceed to pursue some tutorial initiatives within the software program preservation neighborhood.
- Laptop Conservation Society: Steve Kaisler, a member of the Laptop Conservation Society (CCS) in London, England, introduced a chat entitled “Software program Archeology: The Medley Interlisp Restoration Venture” on November 16, 2023 in London, England. This speak mentioned a short historical past of Interlisp, some functions, and a few points and challenges in modernizing the Medley Interlisp software program. The speak was recorded and can probably be posted quickly.
Venture and Group
Because the work proceeds we increase our assets and modify our processes to higher obtain the venture targets. In 2023 our crew grew and we devised methods of maintaining observe of the work on the GitHub repositories.
- Three new common contributors joined the crew, Matt Heffron, Paolo Amoroso and Andrew Sengul. Matt joined the crew as a former Medley and Interlisp person and developer, and contributor to numerous initiatives. Paolo exercised Medley as a person, reporting any bugs and points that wanted consideration, and reviewed the prevailing documentation. Andrew, who got here to the venture as a Lisp developer, undertook a significant redesign of the venture web site, restructuring it based on the venture targets and making it simpler to seek out the data customers want, in addition to clarifying and increasing the content material. He additionally investigated how the event of Interlisp and different Lisps can proceed. As a part of this work, for instance, he began trying out the Medley take a look at harness in view of utilizing it once more for testing system builds.
- In our GitHub repositories we started tagging points and pull requests with a set of initiatives that can assist us observe the progress of the work and guarantee it fulfills the venture targets.
Wanting Forward
As we transfer into 2024, we stay dedicated to advancing the Medley Interlisp Venture.
An extended-term aim is “sustainability”: Get the system in a state the place no prior data is critical for builders to make adjustments.
- Be certain it’s potential to rebuild the system from sources (recompiling each Lisp module and LispUsers).
- Determine the entire documentation we’ve, catalog it and hyperlink it with the supply code for the variations that we’ve.
One other aim is to increase our outreach actions to each the extent Lisp communities and to the broader Laptop Science neighborhood.
We proceed to increase and refine the documentation on Medley Interlisp, together with volumes on the Lisp Object-Oriented Programming System (LOOPS).
We’re evaluating quite a lot of Interlisp and Widespread Lisp functions with the aim of creating them publicly accessible for obtain and use.
Thanks to our contributors, supporters, and the broader neighborhood for making this journey potential.
Keep tuned for extra thrilling developments within the coming 12 months!