Got VS Code colorization for Dylan in pretty good shape. Now to work on a theme that is less "fruit salad" and more "where are the important bits".
Got VS Code colorization for Dylan in pretty good shape. Now to work on a theme that is less "fruit salad" and more "where are the important bits".
@weekend_editor @CuratedHackerNews @DylanLang
From what I can tell based on the name and the image (there's no doc?) what this is doing is looking at each symbol in the current environment and deciding how to highlight it based on its "kind".
Is it a function? Make it blue. Is it a special form? Make it purple. etc.
(But a brief look at the elisp code reveals long lists of hard-coded symbol names, so I dunno.)
Whereas Dylan's optimization coloring is, as you say, showing how method dispatch is optimized or not.
Compiler inlined the code of the exact method? Make it dark grey. Method will be selected at run time? Make it red. etc.
So very different beasts but the name Semantic Coloring definitely has the same ring to it.
(reduce #'eq '(x x x)) -> NIL
You really have to do something like
(reduce (lambda (a b) (and (eq a b) a)) args)
which fails for `(nil nil nil), or better
(every (lambda (a) (eq a (car args))) (rest args))
Both are a little annoying. I prefer n-ary functions.
That said, #DylanLang makes all of the comparison functions binary and I don't remember ever needing an n-ary version. But if there's no performance penalty I say go for it.
π Release 2026.1 of the Open Dylan compiler, IDE, and tools is available for download!
This release includes several performance enhancements for the runtime and generated code, along with the usual bug fixes.
See the 2026.1 release notes for an overview of what's in this release: https://opendylan.org/release-notes/2026.1.html
Download here: https://opendylan.org/download/index.html
I work on LSP for #DylanLang sometimes. If I ever give up on Dylan maybe I'll work on similar things for CL and try to make them usable.
π Just released a new version of DIME, the #DylanLang Emacs IDE! Bug fixes, new doc, some reorg.
Supports
- jump to definition
- edit callers
- parameter list display
- compile buffer project
- jump to compiler warnings
and more.
https://github.com/dylan-lang/dylan-emacs-support/releases/tag/v0.2.0
https://package.opendylan.org/dylan-emacs-support/index.html
Current status: fixing the #DylanLang sockets library to have better error messages. Considering whether I should dive one level deeper and finish this rewrite of the sockets code I found to match the POSIX APIs and support IPv6: https://github.com/dylan-foundry/posix-sockets
I am revitalizing the #DylanLang http libraries. Ripping out feature-itis, generally touring the facility and picking up slack. HTTP/2 support is in the offing.
Perhaps a new templating facility that combines the best parts of Dylan Server Pages (oof, that sounds old) and Mustache-y templates.
Will our intrepid #CommonLisp -er beat me to a full HTTP/2 implementation? If not, I'm thinking maybe I'll convert my Dylan code to CL if I like how it turns out. π
All part of my https://yhoti.org evil plan.