Naming is hard and conflicts are easy, but this project clashes with my own project called Trilogy. Both for SQL-family, although mine is in the JavaScript realm. I'm not too surprised someone followed the logic did to get the name.
Not a huge project but has some users, and I still try to work on it to get the typings (TypeScript) where I want them.
I ran into this with Sony's PlayStation site. I generated a passphrase that the registration form allowed but from then on I was unable to access my account. I went through the same trial as you and found that they were truncating the password to something like 16 characters. That was just this past year, so I'm pretty sure it's still that way.
You're assuming this person would be thinking rationally about a crime they'd like to commit, when it's often a very specific urge that overcomes their fear of consequences.
> Last time I was going to try it, I got sidetracked reading up on rules for identifier equality
It's way too easy to ignore (or even embrace) the identifier equality rules in Nim to make this the hill you die on. My story's very similar to other responses - I've been using Nim for quite a while and these identifier rules have never been an issue.
I strongly suggest anyone hung up on this monster under the bed try Nim anyway as it's really pleasant to use. It's sad that all Nim's benefits are sometimes drowned by mostly unfounded hangups on this identifier thing.
This is exactly my point when I say it needs to be better understood: you wouldn't do it within a single project, but if you've got a third party library that exposes a `read_file` method you can use it as `readFile` meaning your own code base is more consistent.
In other words, you're not limited by the design decisions of another developer (or language, as nimmer pointed out).
I think it's hugely underrated. I agree that it really is a fun language to use and as someone who came to it from a web dev perspective with no prior system level experience I had no trouble at all being productive in it (I built four internal Windows GUI apps with it).
But there's also some things that make people nervous -- like case & style insensitive names (ie. `read_file` is equivalent to `readFile`) -- that are almost never an actual issue.
Having that be more widely understood would do a lot of favors for Nim, and once the language hits a stable 1.0 I could see it getting a lot more attention.
I think the fact that this (and all macros with `babel-plugin-macros`) requires an explicit import helps keep it out of magic territory. You do have to become aware that the symbols transform the function/argument they're a part of, but this is only really new to JS devs. It's familiar in a bunch of other languages.
I documented how they work in this part[0] of the readme.
Right, this is currying not partial application. And it comes with the drawback that you always have to call the function multiple times. You can't provide all the parameters in one list, which rules out things like spread arguments. That's not the case with `param.macro`, depending on how you apply of course.
Not a huge project but has some users, and I still try to work on it to get the typings (TypeScript) where I want them.
https://github.com/citycide/trilogy