@dougmerritt I thought about cowardly walking myself back, but then I threw this spaghetti at your wall instead: https://lispy-gopher-show.itch.io/lispmoo2/devlog/834651/itches-of-mine-lispmoo2-scratches Finishing the joke comparing MOO + lisp to the objective realities of C++ + smalltalk left as an exercise to the reader @jackdaniel I have been a bit nervous about what you think of my exuberant use of your command-table work... On topic though, I guess I will eventually use clim completions. Atm neither slime nor anything else is doing completions.*Oops 1/2
@dougmerritt@screwtape technically common lisp has both unnamed and keyword arguments, although the latter can't be specialized in standard generic functions.
There's also that many editors provide the function signature as a hint when you edit a function invocation; I don't know how this would work like with messages though.
@screwtape I'm not quite sure why that makes you enormously happy, but as a language designer, I can share a related observation:
Programmers seem to me to do better with tools that let them use approximations of natural language. For instance, in the Smalltalk language, it was/is very common to have method named arguments marked with things like "WithHelpOf:" -- markers of prepositions and so on.
Languages with unnamed arguments, like Common Lisp, C, etc, can be dealt with because we have big brains, but somewhat less naturally.
@jackdaniel Actually, currently unused, every lispmoo2 - object is associated to an ungrafted clim pane I stuck in their symbol-value. (Ie it's sitting there unused as an in-memory extended stream). I imagined that these would serve a role in broadcasting updates using sudo-output-replaying and 2D GUI rendering, but that's very not here nor there yet. @dougmerritt
@dougmerritt (And sorry about the sudden spam) On the topic of natural language, there was a technical discussion I lost somewhere; I think I've erroneously attributed it to Yib (of ygm) before. The problem is seen here: The MOO language *only* (broadly) has this: verb [ direct-object [ preposition indirect-object ]] This works quite well, a lot of the time but then there's this: In my 'game': talk princess talk is the verb, princess is the direct-object. But this is anti-NLP. 1/2 @jackdaniel
@dougmerritt In contrast, in the lambda RPG in lambda moo, the first place people normally encounter it is when they turn on the N64 and reality shifts them into a first person experience with Zelda. In my antecedents/betters' case, they magicked the MOO rule into this: talk to Zelda By defining the verb to *only* take a direct-object, which is a string (everything after the verb), and then custom parsing whatever that got. But now the user needs to learn a language for every verb @jackdaniel