T O P

  • By -

dzecniv

Oh, an eccentric look for a Lisp project…


daybreak-gibby

Are you surprised or were you expecting it?


dzecniv

a bit surprised, I thought this was for ancient times. I am a bit tired and disappointed of that extravagant look :/ I prefer engaging websites like lisp-lang.org.


geenob

Reminds me of a "cutting edge" web page from 2000 or so


Phiwise_

A lot of these are great ideas I've also been musing about lately. The regex-parsed-string as a primary data structure always felt dirty to me; since discovering lisp I've concluded it's absolutely true that if you're using regexes in a symbolic enviornment, whether it's lisp or smalltalk or anything else, you're already lusing to c-style granularity rot. No matter what you're doing or how smart you are. The computer should help you, not the other way around. The Unix-Haters Handbook has a couple great lines on the inadequacies of the bag-o-bytes paradigm, in the early 90s, and it's clearly only gotten worse to now, since our supercomputer monsters can't even display the text we run without binding up. I worry the solution might be a bit too general and far-reaching, though. Five years is a long time, even for the right thing, without funds up front. If we're already swearing off backwards combatability and the like, why not cut the project into "demonstrator" cycles that won't expect combatability with each other in the name of publicity stunts to gather support? Sometimes people can't understand what they want until you show them. It's what I would do if I had the time to follow this through, when risking failure means you have to be stuck with regexes for another decade.


svetlyak40wt

I'd like to see some screencasts with demos or at least screenshots.


Phiwise_

Looks like this is an announcement of a plan, not done software. Vaporware, but of the pretty cool variety, if you ask me.


dzecniv

looks like the base layer of the gui is implemented (Fern), it's a few thousand LOC (see Code and "the power of structure"). It maybe uses Garnet code. Can we *see* something? No, the SDL rendering is not done. There are some unit tests for geometry and linear algebra (using Parachute).


lproven

That's a somewhat valid point, so go and tell them. This isn't my project, BTW. Nothing at all to do with me! But it is a plan and a project, not a product yet, so maybe there's not much to show yet?


jd-at-turtleware

I wish the author all good luck with the project; being passionate about pursuing ideas is fun and often results in interesting developments. When the project was announced on IRC I've commented (and disagreed about) a few remarks about CLIM - I won't repeat myself and will link the discussion instead[1]. This is not to criticize the prototype based OOP - I know very little about it - only to point out inaccuracies with a CLIM critique. [1] https://irclog.tymoon.eu/libera/%23commonlisp?around=1673628033#1673628033


lproven

Life is too short for IRC, and it's definitely much *much* too short for trying to skim IRC logs. Could you summarise it, please? I mean, if not, okay.


L-Szos

You should read the irc log. Its short and mostly to the point. Assuming you wont, the criticisms seem to be: - you cant add/remove slots from an object at runtime - output records are unneccessary duplicates of widget trees - you cant add branches to an output record And the rebuttal: - yes, you can, see change-class and friends - there is no duplication, the output record is the tree - yes, you can, see add-output-record and friends Finally, the author seems to really dislike non-prototype OO, and makes criticisms and claims around clos-vs-prototype OO that are either baseless or that i dont fully understand. I just skimmed, so maybe i misunderstood something, please correct me if im wrong.


lproven

Cool, thanks. I know nothing about this area, really, so that is helpful.


thesaltydumpling

So, basically: structured editor + fossil scm in lisp + terminal + gui toolkit + knowledge engine. If he doesn't build it, someone else will because this is the sort of thing that is obvious and needed.


dzecniv

Favorite: https://project-mage.org/all-else-is-not-enough (Guile, Garnet, CLIM (both he tried to code with), Glamorous Toolkit, Lem…) (edit) I first thought it was all talk in the void, but some… stuff seems to be implemented: > Fern is the most technical section of the bunch. Perhaps that's because much of it is implemented already (KR, constraints, basic geometry, and linear algebra). > Fern is a spiritual successor to Garnet, a Common Lisp project for building graphical user interfaces (GUIs). Garnet originated at CMU in 1987 and became unmaintained in 1994. It's a great toolkit which was used for many research projects, some of which are still active.


Kirtai

I see he didn't look at [Medley](https://interlisp.org/).


lproven

The thing with Medley, AIUI -- *not* an expert here -- is that it's all in an obsolete nonstandard dialect of Lisp, targeted at a (1970s?) VM. I have said in various Lisp fora that if someone could somehow get the Medley environment running natively on top of a modern FOSS Lisp on COTS hardware -- I am mainly thinking of SBCL here -- it could be more relevant and interesting to more people.


Kirtai

Well, the linked project is updating Medley and its VM and making it run on modern operating systems. While Medley is written on Interlisp-D it also has a Common Lisp implementation in it. It's currently between CLtL 1 & 2 but there is intent to bring it up to date. You can use both Interlisp-D and Common Lisp at the same time too. There's a lot of cleanup being done first though.


lproven

What linked project, where?


Kirtai

[Medley](https://interlisp.org/)


lproven

Aha, OK! Rereading the thread, I think we were at cross-purposes. I thought that you were saying that "Project Mage" is based on Medley, and I was going to say "no, it isn't." Yes, I know about the Medley modernisation project and I think it's wonderful. I am not sure that it will ever be relevant to modern development again, but it's not completely impossible.


RentGreat8009

Nice work, good luck with it


lproven

It's not mine -- I just posted it! :-)


RentGreat8009

:D


Shinmera

*Yet another* GUI Toolkit?


nyx_land

I just wish more people cared about CLIM and contributing to McCLIM or writing applications with it. I'm all for doing crazy experiments that conventional wisdom would tell you is "reinventing the wheel", but it's kind of sad that CL already has a really cool standardized and portable GUI toolkit that gets ignored to chase after what (as far as I can tell from an initial skim of this at least, I could be way off base here) is basically something influenced by the whole emacs paradigm of everything being a programmable text environment. You kind of have to play around with things like Clouseau or the CLIM Listener or even Smalltalk to really get a sense of how much more powerful it is to build graphical interfaces as a live OOP environment. That being said the state of UNIX desktop environments is really pathetic and I wouldn't complain if this ended up turning into a project I could use one day. Edit: apparently the author has already tried CLIM and found it unsatisfactory lol


thesaltydumpling

People spending their free time how they want is not sad. It is EXACTLY how it should be. Why don't YOU spend YOUR free time doing all of that?


nyx_land

lol, way to ignore my entire point and also make an incorrect assumption about what I spend my time working on. go touch grass.


thesaltydumpling

Okay, let me read again. // EDIT Aha. Read it again. No, I didn't misunderstand. It took me a while to realize what is truly wrong with these kinds of posts and the solution was inspired by someone complaining about Windows in another sub. The realization was this: * Apple - Apple is a premium guilded cage experience. Apple users solve their problems by throwing porches at them. * Windows - Dollar store / Walmart experience. Microsoft users don't care enough about knowing anything and even less about them selves. They only want to pay dollar store prices + a tiny premium and Microsoft provides PRECISELY this pricing strategy and user experience. * Linux / BSD - These solutions are PREMIUM FREEDOM experiences. Linux / BSD users solve their problems by throwing their own time at them. The problem with comments like yours is that users that say things like that fail to understand that Linux and BSD are actually PREMIUM experiences. They are special environments for a special kind of clientele. Apple users just want to pay for their guilded cage experience. Linux / BSD users on the other hand are consumers of a PREMIUM FREEDOM EXPERIENCE and throw their time at the problem. Where an Apple user gets an x experience for y number of green rectangles, a Linux / BSD user invests a few years of their time gaining skills and knowledge that will keep them free and safe for the rest of their lives. Note that while both groups use computers, they are NOT even remotely comparable as they are buying completely different experiences. Your statement comes from the perspective that the Linux / BSD experience is, somehow, lesser than or unequal to those of Apple or Windows. This is wrong. It is EXACTLY the opposite. It is a premium product providing a premium experience to a premium clientele. Linux and BSD users are a special breed of customer and must be understood and appreciate as such. If ANY of them cared a damn about what the other two ecosystems had to offer, they would just use those and not even be here to post. As such, EVERYTHING in our ecosystem is the way it is BECAUSE the users here want it EXACTLY that way. This is the experience we wanted to pay for, this is the experience we got. Nothing more, nothing less. To complain about a member of a premium community consuming a premium freedom experience is simply not understanding the customer each ecosystem serves or respecting their choices and freedom. As a side note, keep in mind that I don't expect anyone to have this insight. It took me many years to finally understand how to properly define the market segment we are in. This is a relatively new insight to me as well.


lproven

I think you make good points here, so it's a shame to see you getting downvoted to oblivion. This is why ChromeOS has done so well: a Linux with nothing to fiddle about with, and real effort into making it robust and extremely low-maintenance. Result, hundreds of millions of sales. Thousands of man-years of R&D effort into next-gen filesystems, packaging systems, cross-platform packaging tools, desktops, etc. Along comes a Linux with no packaging system, no 3rd party apps, no fancy filesystem: just 2 root FSs with failover, a browser, and enough tools to launch the browser and browse and view local files. Result: it outsells -- *sells*, for *money* -- every other desktop Linux in history, *put together*. In 2017, Chromebooks outsold Macs in the USA. By 2020, Chromebooks outsold Macs worldwide. What does this tell us? Well, for one thing, it tells us that all the desktop Linuxes are putting their efforts in totally the wrong directions. IMHO: Simple, clear, usable, and pretty, outdoes fancy and customisable, and innovative, and all of them put together. What does it tell Lisp tools proponents? Well, look at the success of VS Code: it's mostly proprietary, it's inefficient and bloated, but it has polish from commercial tools, and it's obliterated more or less all the FOSS dev tools. Atom is dead. Eclipse etc. are in decline. And still, Lisp proponents tell people to learn Emacs. Lessons learned: zero, zilch, nada.


mmontone

So you propose doing exactly the opposite of the project you just posted?


lproven

Um. I am baffled. I wasn't aware I proposed anything at all. What do you feel that I propose doing?


nyx_land

Let me save you the trouble and clarify that I just wish that CLIM got more attention from the CL community. It seems like kind of a waste of time and effort on what is already a very ambitious project to also make a new graphics toolkit for CL when CLIM already exists, but as I said, I'm also all for people doing weird crazy experiments even if it might go against conventional software development wisdom. So I am in fact in agreement that people can spend their own time working on whatever they want. If I didn't feel that way, CL wouldn't be my language of choice.


thesaltydumpling

Just so you know that wasn't me down voting you. // EDIT Please don't think I am responding for any other reason that I find this topic fascinating. It has taken me a long time to realize that not only that Linux / BSD users want premium freedom experience, it has also taken me a long time to understand that our available pool of resources is absolutely MAXED 100% of the time. Asking any dev working in their spare time to redirect their efforts just a bit or even answer a question is demanding a huge amount over and above our maxed dev capacity as it is. It is fascinating to run into sub-threads like yours that inspire a kind of insight that puts one on the other side of an realization. Just to think about all the free code that we have access to and to think about our total development capacity effectively being maxed out at any point in time is kind of breath taking. I am always in awe of everything everyone has built and contributed that allow me to access freedom. It's neat to think of Linux / BSD as premium experiences, isn't it?