Stringscope, a beginner coding project in Interlisp

30 views
Skip to first unread message

Paolo Amoroso

unread,
Feb 1, 2023, 11:42:12 AM2/1/23
to Medley Interlisp Users/Interest
To gain familiarity with the Medley environment and development process I started a small programming project. I wrote Stringscope, a tool for listing the text strings in binary files similar to the Unix strings command.

On my blog I shared my experience with writing Stringscope and I attached the symbolic file to this message. As a hobby programmer and Medley beginner I'd appreciate any feedback you may have.

Thanks,


Paolo
--
STRINGSCOPE

Nick Briggs

unread,
Feb 10, 2023, 6:51:37 PM2/10/23
to Paolo Amoroso, Medley Interlisp Users/Interest
Hi Paolo —

I think the approach I would have taken is to keep a list of the starting and ending positions of the strings rather than the strings themselves (which may consume a lot more storage), and then make a pass writing to the window without actually constructing the strings.

There are plenty of optimizations around processing only what’s visible, incrementally extracting the characters to be displayed as you scroll, caching the visible part for redisplay, …

— Nick

--
https://Interlisp.org for more details
---
You received this message because you are subscribed to the Google Groups "Medley Interlisp Users/Interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to interlisp+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/interlisp/CAGi1hzu1VFyR-g9%3DP5gNqCfbD_5o7v7wkmxkTC-S9NmoVBRd4g%40mail.gmail.com.
<STRINGSCOPE>

Paolo Amoroso

unread,
Feb 11, 2023, 3:42:08 AM2/11/23
to Nick Briggs, Medley Interlisp Users/Interest
Hi Nick,

Thanks, I appreciate your feedback as I was meaning to do some profiling as a starting point to optimize Stringscope.

IRM hints a full redraw isn't efficient but the documentation seems to have only one code example of window repaint, which is the one I used as a template. I'll check the code base for more such code to study.


Paolo

Paolo Amoroso

unread,
Feb 19, 2023, 3:06:00 PM2/19/23
to Medley Interlisp Users/Interest
On Saturday, February 11, 2023 at 12:51:37 AM UTC+1 nicholas...@gmail.com wrote:
There are plenty of optimizations around processing only what’s visible, incrementally extracting the characters to be displayed as you scroll, caching the visible part for redisplay, …

In the system or LispUsers sources can you recommend any files that use these window repaint techniques in a clear and concise way? I'd like to study some code.

Paolo Amoroso

unread,
Feb 20, 2023, 11:06:37 AM2/20/23
to Medley Interlisp Users/Interest
I added to Stringscope an Exec command and a couple more new features. The latest code is attached to this message.

STRINGSCOPE

Paolo Amoroso

unread,
May 1, 2023, 3:19:57 PM5/1/23
to Medley Interlisp Users/Interest
The code of Stringscope is now available at the project repo and I'm posting updates on my blog. I also recorded a screencast that walks through the features and commands of the program.

Reply all
Reply to author
Forward
0 new messages