4 ms·
Author of the project here... Weird to see this generates such a discussion when the project is something like 20 years old, and has been quasi-dead for a while
by c3d 3y ago
Author of the project here... Weird to see this generates such a discussion when the project is something like 20 years old, and has been quasi-dead for a while now ;-)
An interesting derivative of XL is Tao3D, which shows what you can do with it.
https://tao3d.sourceforge.net https://tao3d.sourceforge.net
A FOSDEM workshop about Tao3D (which includes initiation to XL):
https://www.youtube.com/watch?v=uE9LwSuZD64 https://www.youtube.com/watch?v=uE9LwSuZD64
The design philosophy, and why it's not "just another Lisp" is here:
https://xlr.sourceforge.io/Concept%20Programming%20Presentation.pdf https://xlr.sourceforge.io/Concept%20Programming%20Presentat...
- runlaszlorun 3y agoWell, quite an ambitious and impressive piece of work. And as I mentioned elsewhere here, reading your history made me feel a lot better about not having a ton to show after 3-4 years, haha.
- pkjens04 3y agoHow does this compare to http://flexipl.info/ http://flexipl.info/ Iirc backend and goals seem quite similar.
- mapcars 3y agoI never heard about XL and it looks very interesting, the DSL capabilities remind me of Rebol/Red, but it looks like XL has a proper type system and compile-time optimisations. What is the current status the project? Is there any ongoing work and plans?
- c3d 3y agoThe current state is "on backburner by lack of time". Projects like https://grenouillebouillie.wordpress.com/2022/03/07/a-theory-of-incomplete-measurements/ https://grenouillebouillie.wordpress.com/2022/03/07/a-theory... and https://github.com/c3d/DB48X-on-DM42/tree/stable https://github.com/c3d/DB48X-on-DM42/tree/stable have been consuming most of my spare time cycles. Here are factors playing a role in my current thinking: 1/ the LLVM debacle. I just can't follow them changing the APIs all the time. I gave up on LLVM for now. 2/ Rust being the first language introducing a concept that was not trivial to introduce via an XL library, lifetimes. I think that I nailed a design now, but it annoyed me for a while, and the design is not implemented. 3/ I spent some time documenting where I wanted to go, notably the type system. As a result, I found that the language was becoming complicated, which annoys me. I'm trying to get back to super-simple roots, but I have no clear path towards this goal yet. 4/ I want to to unify the self-compiling compiler and the dynamic one. The self-compiler only compiles an older dialect of the language.
- mapcars 3y agoSounds great, I hope you find a way to resolve those! I will play around with the current version for now, it's been a while since I encountered a new interesting language.
- plaguuuuuu 3y ago20y old but it feels fresh and super powerful to me, maybe I just haven't seen anything like it before. It would be great to have this stuff in other high level languages.
- nielsbot 3y agoMakes me think of this paper "Open, extensible object models" by Ian Piumarta and Alessandro Warth: https://www.piumarta.com/software/id-objmodel/objmodel2.pdf https://www.piumarta.com/software/id-objmodel/objmodel2.pdf The focus is on the object runtime where almost any operation including method lookup can be changed inside the end user environment.
- jauntywundrkind 3y agoI just posted a bit of a love letter to Inversion of Control into the related submission: coding felt like I was building each brick from the bottom up, but IoC let me feel like there was a competent responsible place where all the objects & providers were, where they could be flexibly built out & instrumented. With incredible APIs for dynamically modifying or introspecting what this world of entities & the runtime machinery/factories/&c was. https://news.ycombinator.com/item?id=39460840 https://news.ycombinator.com/item?id=39460840 Spring Framework & other Java IoC/DI stuff was pretty amazing. I kept finding new cool layers of depth as I dove into the model. I love the idea of programming languages that might better integrate some of these ideas, of instrumentability. I'm not sure if it's actually necessary though; maybe having all these code assemblers living in userland libraries is fine. Thanks for the link! Not sure if I've run into this VPRI / Warth combo paper, & worth revisiting either way.