This is my favorite tree in town. I love the way this vine seems to hold it in its #grasp like a hug.
@wilfredh in my work on #GRASP that's a very delicate point, because I essentially want to operate on CST.
Another quite big example is syntax-case macros in Scheme, that manipulate syntax objects (which are CST nodes). While they don't exactly preserve comments, they preserve line information, making comments recoverable.
(Also, you'd typically want to preserve line information at all levels down to assembly)
This year's Scheme Workshop program is already up:
https://icfp24.sigplan.org/home/scheme-2024#program
I'll be presenting my demo right after @wingo 's opening keynote!
@weilawei I'm also actively working towards making programming essentially more visual.
One example is the visual evaluator that I made last year:
https://www.youtube.com/watch?v=wN8Fy5xTXeQ
Another one can be found in the test suites that I write for #GRASP:
https://github.com/panicz/grasp/blob/main/src/test-regressions.scm#L390
@nasser I develop #GRASP with Kawa Scheme (which combones Scheme with Java's object system) and I am rather delighted.
I use inheritance very little though (mainly for code reuse), but I use interfaces almost everywhere.
I agree with your opinion about class hierarchies - they are a distraction and tend to make the design unnecessarily rigid.
While working on #GRASP, I occasionally try analyzing #Interlisp's #SEdit (because I'm curious about its internal representation), but I always end up not being able to understand literally anything from that code base.
And that makes me wonder: are the sources of GRASP so much easier to understand to me because I'm their author, or do the programming practices that I use (such as type definitions and plenty of examples) actually make things easier to read?
(A while ago, I did have a look at implementations of some things in #Emacs. The "undo" mechanism is understandable, but it owns this understandability to comments which make up for a missing type system. On the other hand, I've found Emacs' implementation of window splits much more difficult thant in GRASP -- in large part because GRASP is written in #Kawa #Scheme, and has a Java-like OO system, and I feel that classes and objects do a really good job at grouping related things together.
#Trump crowns himself #king of “#deplorables” with every #fascist word he spews.
He may not have a general #grasp of #politics and #history, but he understands how to use the #propaganda of #fascism to sway #publicopinion.
#Women #Transgender #LGBTQ #LGBTQIA #Conservatives #Extremism #Fascism #Religion #RepublicanParty #Hate #Bigotry #ThePartyOfHate #EmptyThePews