HN user

moigagoo

137 karma
Posts8
Comments32
View on HN

No it's not. Araq does use LLM to generate code in Nimony but his approach involves very strict control over the produced code, it's nothing like Bun's Zig to Rust endeavor where they just asked it to dk the migration and it produced a million lines of incomprehensible code. Calling it slopcoding is a misnomer.

My love letter video turned out a bit chaotic, I apologize upfront.

But the core points I make there I can get behind any day of a week. I do think Nim is the best language out there and I'm tired of pretending it isn't (insert the DeNiro-Phoenix-Joker meme here :-)

We use custom types for that usually, optionally with parametric polymorphism.

But as others said already, Nimony (codename for the next Nim iteration) introduces revamped concepts which should be even more convenient.

Thanks for the kind words!

Presumably, your server stores a registry of Device IDs and IPs to route messages?

Not IPs but Push API registration objects.

What about replacing this with some sort of partitioned DHT to make it decentralized?

I guess this could be done but it's a task I can't tackle at this point.

Also, the messages flow through your servers?

Yes but I don't store them. My API just dispatches the message to the recipient's push service. Which means the message exists on my server only in the form of an in-memory variable for several microseconds between being received and sent further.

Would it be possible to set up WebSocket connections between the users instead, and how would that compare from a security model perspective?

This generally can't be done in a PWA. OS won't allow a persistent WebSocket to run in background.

Also, this would disclose too much information about a client to all the other clients. Currently, all I know about other clients is their Device IDs which are just random strings.

The biggest challenge with Enu is that kids don't read or write well, so they're basically sitting there telling youbehat to do and you're just coming up with solutions frantically on the spot.

It just occurred to me, that sounds a lot like actual development for a customer :-)

Nim 2.0 3 years ago

Congratulations to everyone involved and the entire Nim community!

Nim has been my language of choice for the past decade and I'm really happy with the new features in Nim 2.0. Some of them are real gamechangers for my projects. For example, default values for objects theoretically allow me to make Norm[1] work with object types along with object instances. And the new overloadable enums is something Karkas [2] wouldn't be possible at all (it's still WIP though).

[1] https://norm.nim.town

[2] https://karkas.nim.town

As a Python user, I had my a-ha moment with Nim when I realized I didn't need a repl.

With Python, I used repl all the time. There's bpython, ptpython, ipython, and probably a couple more great repls because repl is really important for Python development.

Nim's INim is no match for those. But here's the great part: with Nim you don't have to test code snippets all the time. I get all my error messages before they happen. This felt liberating after Python.

[dead] 4 years ago

AFAIU she said the agreements were never viewed as a solution for the conflict.

The goal was to cool the conflict down to a state that allowed Ukraine to get better at war: collect arms, build defense lines, train soldiers, etc.

So, in other words, she said the war between Russia and Ukraine was inevitable and even expected and the agreements were introduced to give Ukraine advantage.

Nim 1.6 5 years ago

In the ORM field, Norm[1] is an actively maintained package that supports SQLite and Postgres (shameless plug). It's framework agnostic, I've used it with Jester and Prologue (it had nothing to do with Prolog btw).

Among frameworks, Prologue is the most actively developed and feature rich.

[1] https://norm.nim.town

Nim 1.6 5 years ago

I've been using Nim for hobby programming for a few years now. I'm maintaining the Norm package, it's an ORM for SQLite and Postgres. Not a huge project but not a hello world either.

Style insensitivity has never caused a single problem for me. Honestly, this is the most unimportant language feature, I don't get why it causes such fuss every time Nim is mentioned.

I remember Enu from NimConf. It was very impressive then and it's even more impressive now. That evil tower you built looks freaking dope, straight out of Tron!

My son is just three and too young to learn programming but when he's older I'm definitely adding Enu to my educational toolset among turtle and Colobot. Thanks!

Nim 1.4 6 years ago

From my experience, there really is not that much need for debugging in the sense of adding breakpoints and attaching to a running process with Nim. Honestly, `debugEcho` suffices, give it a shot. I mean, you may need more debugging tools when your project gets large but since you're just starting with Nim, you can just relax and keep going.

Nim 1.4 6 years ago

100% agree. I'm developing an ORM [1] in my spare time specifically with the vision to make it easier to create web apps with Nim. Created a PoC with Jester in backend, Karax on the front, and Norm for model definition, and it turns out to be very much usable, accessing the same models from backend and frontend and all that.

[1] https://norm.nim.town

Yay! We're one step closer to 1.0, which—I believe—will be a major milestone.

Nim is surely a very interesting language with some very real perspectives for production use.