Ideas for funding further development of a domain-specific language (DSL)?
3 by xrs_hpc | 2 comments on Hacker News.
During the last ~10-ish years, I have been working (as a continuous side-project) on developing a domain-specific programming language, focused on making it easier to write a certain class of fluid dynamics simulations. After a 8-month sabbatical, I am finally getting close to the point where I have a decent compiler for this language. Even at this earlier stage, the compiler is a joy to use (and I am trying to do as much "dog-fooding" as possible, in parallel to improving the compiler). I want this to be an open-source project but, at the same time, I would like to find out ways to keep working on it and sustain myself and my family. Target audience: By my estimates, this new language may be useful (for research, or at least for teaching) for ~1000 people working in this field (assuming that they will accept some small amount of learning, of course). It might also be relevant to a few HPC hardware-vendors, because I am generating accelerator-aware code from one of the backends -- I am fine if they use my code to showcase their hardware, as long as they give something back :). It might also be interesting for people who are just curious about this field. So, my questions are: (1) What are some possible revenue-streams for supporting the continuous development of a programming language, while keeping it open-source? I think I demonstrated by now that I am willing to work on this for free. However, it would be nice not to worry also about a "real" job. The open-source part is quite important, because (more than funding) I want people to use this language. Also, I hope to attract some developers for things like IDE integration, making amazing (Elm-style) error-messages, etc. I am also doing my best to cover these areas, but worrying about these things is no longer a one-man job. (2) Which open-source license would you recommend in this case? P.S: I plan to submit another message here soon, to announce the official release.