As I understand it Lean is not a general purpose programming language, it is a DSL focused on formal logic verification. Bugs in a DSL are generally easier to identify and fix.
It seems one side of this argument desperately needs AI to have failed, and the other side is just saying that it probably worked but it is not as important as presented, that it is actually just a very cool working methodology going forward.
Obviously any observation I make is limited by my experience, but my experience of the last few years is that hardly anyone uses 'this' anymore in JavaScript because everyone uses arrow function, generally mandated by leadership. This observation is of course just limited to the places I've worked.
So the @Get('/')
index() {
return { message: this.greetingService.getGreeting() };
} example was weird for me to see, although not unwelcome.
I am however not that great at Typescript, which again my experience of work is that most of the developers I encounter aren't, and just use it as a lightweight structuring tool for JavaScript.
The @ decorator is thus always hard for me to reason about what is actually going on.
On the other hand I might be using this in the new year [despite my relative incompetence in Typescript], if I decide to build my next project on Node (I am considering Elixir to use Phoenix, hence having to say "might"), all of which is a long-winded way of saying looks pretty interesting and nice work.
Thanks for the feedback, Bryan! I really appreciate the honesty, and you’ve touched on a very real shift in the JS ecosystem.
Regarding the this and class-based approach: you’re absolutely right that the industry has leaned heavily towards functional patterns and arrow functions recently. The choice to use classes in Rikta is specifically to support Dependency Injection (DI).
In modular backend systems, DI makes it much easier to manage services (like the GreetingService in the example) and, more importantly, makes unit testing significantly simpler because you can easily swap real services for mocks.
As for the decorators (@): I completely understand why they can feel like "magic" or be hard to reason about. In Rikta, we use them to declaratively attach metadata to your code (e.g., "this method should handle GET requests"). It keeps the boilerplate out of your logic, but I realize it requires a bit of a mental shift if you're used to a more literal, functional style.
Don't worry about the "TypeScript competence" part! One of my goals with Rikta is actually to provide enough structure so that you don't have to be a TS wizard to build something solid. The framework handles the "heavy lifting" of the types, leaving you to focus on your business logic.
Elixir and Phoenix are fantastic choices (concurrency there is hard to beat!), but if you do decide to stick with Node for your next project, I’d love to have you try Rikta. Feel free to reach out if you hit any walls—I’m always looking to make the "getting started" experience smoother for everyone, regardless of their TS experience level.
when I say "not unwelcome", I generally have not been overly traumatized by 'this' usage as some people have, its tricky nature being somehow enjoyable to my mind.
>If the actions and beliefs of a group are fundamentally morally repugnant to me,
sure, although if tribal differences are always experienced as fundamentally morally repugnant one might think the moral calibration is screwed a bit too tight.
>I think that it is reasonable to not expect me to be able to find "something positive" in it.
Sure, I do think it is possible that some groups are so morally repugnant that they have absolutely nothing to offer whatsoever. For example that tribe of cave dwelling cannibals in the film The 13th Warrior, man those guys sucked! But the comment seemed more to be about how it is weird that when you find some group does some things that you find morally repugnant then they have nothing they do that can ever be good.
I have lived in places in which I find much of the surrounding culture to have behaviors that I found morally repugnant, or intellectually repugnant for that matter, but even at my most contemptuous of a culture and a people I will at times be forced to admit, honestly, that they have behaviors that can also be considered admirable (in many cultures the repugnant bits are so tightly bound to the admirable bits though I can see how it is difficult not to condemn everything)
> sure, although if tribal differences are always experienced as fundamentally morally repugnant one might think the moral calibration is screwed a bit too tight.
They're not always experienced this way. But that's the trend in America.
> but even at my most contemptuous of a culture and a people I will at times be forced to admit, honestly, that they have behaviors that can also be considered admirable
Ya, I think it's something along the lines of "even a broken clock is right twice a day".
Do I need to give out a cookie when the clock tells me the correct time if it's fucking me on the time the rest of the day?
Even a developmentally disabled human tends to be significantly more complex than a stopped clock so the analogy doesn't work well.
if anything it is more than a computer with a lousy video and sound card, you don't use it for games or streaming movies or most things, but due to some other things (which I am not going to take the time to create a plausible scenario why this should be) the computer is actually really superior as a server, so you have set it up for that. Do you give out a cookie for the computer that works really well at serving content over port 80 despite it sucks for anything you enjoy?
> Even a developmentally disabled human tends to be significantly more complex than a stopped clock so the analogy doesn't work well.
I think it works perfectly, honestly. Maybe moreso after the above statement.
> Do you give out a cookie for the computer that works really well at serving content over port 80 despite it sucks for anything you enjoy?
No, I do not. Nor does the server ask for a cookie. It just does its job consistently without making a fuss. If governments could do that bare minimum thing, the world would be a better place.
this seems an idealistic view, my cynical view is that if King Lear gives up all his legal paper power he will find out nobody cares who the hell he is and take advantage of him without remorse.
In my experience (at a much smaller scale than these guys, of course) the legal papers power is more of a formality. It’s the soft power tied up in knowledge, relationships, trust and goodwill that really count.
It seems one side of this argument desperately needs AI to have failed, and the other side is just saying that it probably worked but it is not as important as presented, that it is actually just a very cool working methodology going forward.
reply