> Its just that most programmers don't want to code in it.
Most programmers don't want to code in APL, Prolog, Haskell or Scheme either. Most programmers don't want to even consider writing Smalltalk or Clojure or F#; and they won'tever touch Idris, even if they somehow knew it existed.
I get a feeling that most programmers just plainly don't want to program at all, that they'd be happier doing something better-specified, more solid, like painting walls or something.
I don't believe that getting "most programmers" to use some language or other should be the goal. Creating better tools for people who want to use them should take priority over trying to simplify the tools to make them more accessible to those who don't want them. If the tool is really good then someone will make it "user friendly" sooner or later, and "later" really isn't a problem here and in most cases means about 20 years.
I'm not involved with Factor community, but I was under an impression that its users are people who understand that. It would be a shame if they got discouraged by the lack of "mainstream adoption" and stopped working on it after a mere "few years". That's not even enough to tell if the idea is really good or bad.
I'm sure they keep using it and that's ok, of course. But deepdown you want your projects to be widely adopted. That provides motivation and renewable workforce given that at some point the "elders move to greener pastures".
Take Go for example. Its creators helped a lot of people to write easier network software. Maybe they even would have preferred another syntax, but got over that and just used a syntax that most programmers would perceive as familiar and easy to learn. To me there is a lesson in this too.
If the tool is really good then someone will make it "user friendly" sooner or later
I disagree. User-friendliness is like security: it's not something you can paint onto the system afterwards, it's a more fundamental property. There's certainly value in building experimental systems and tools to explore ideas, but at some point you have to consider the question of getting the ideas out to the wider community. And the key to that is pragmatism.
People clearly aren't as stuck as you think; tools like Ruby or node.js or the cambrian explosion of javascript frameworks show that. But those have traction because you can show people your own rapid success with them.
If someone's rapidly delivering high quality publicly usable applications with a novel technique, people will notice.
> tools like Ruby or node.js or the cambrian explosion of javascript frameworks show that
Ruby appeared in 1990, JS in 1994 (iirc?). Saying they got "widely" (that's a relative term) adopted 15-20 years later is not going to convince me that "people aren't as stuck as I think".
Meanwhile we're still waiting for ideas from '60 and '70 to get to the mainstream. No, I really think people are a bit conservative when it comes to tools they use.
Just because someone doesn't want to code in APL (!) does not mean that they dislike programming. Whether you understand them or not, there are actual reasons why most programming goes on in languages that aren't the ones you mentioned.
But the creator went to Google, and he was the main force in really advancing Factor in the early years, IIUC. Of course, after a few years you expect a software product to stop changing that much anyway.
Factor is modern, has a single implementation, with an optimizing compiler, high quality libraries, a great interactive environment.
Factor got so much love from Slava Pestov and a tight community (that I believe still mantains it) for a few a years - it was beautiful thing to see.
Its just that most programmers don't want to code in it.