Maybe Ragel deserves a mention: http://www.colm.net/open-source/ragel/
Interesting Programming Languages
41–50 of 85 posts
Re: Interesting Programming Languages
#42Of note: Hy.
Re: Interesting Programming Languages
#43What makes Icon interesting is that its functions ("procedures" in Icon terminology) are essentially generators in that they can "fail" (prune, produce no [further] results), or "suspend" results as many times as desired. "Failure" drives backtracking. So it's Prolog-like, but with Algol-family syntax.
Not surprising then that I find jq interesting too: it has pervasive generators and backtracking, just like Icon, though with a fundamentally different syntax, and very limited type system.
Re: Interesting Programming Languages
#44Notably missing: APL (Dyalog), J, Prolog, Rebol (Red is on the list), PicoLisp, Racket, Factor, 8th (Reva was mentioned and that was the creator's prior project), and Haskell. Maybe most of the above are too mainstream for the list.
Re: Interesting Programming Languages
#45The list seems rather arbitrary. To add to the list, I would consider also: CLIPS, Coq, Dhall, Factor, Inform, Stan.
> The list seems rather arbitrary As opposed to what list? An exhaustive one? The quality he asks of the languages in the list is "interesting", which is by definition rather arbitrary itself.
This is a good (albeit exhaustive) list too: https://en.wikipedia.org/wiki/List_of_programming_languages_...
Re: Interesting Programming Languages
#46Missing: Icon. I think Icon is a fascinating language in spite of being dynamically-typed. I've not used it in many years though. What makes Icon interesting is that its functions ("procedures" in Icon terminology) are essentially generators in that they can "fail" (prune, produce no [further] results), or "suspend" results as many times as desired. "Failure" drives backtracking. So it's Prolog-like, but with Algol-f…
Re: Interesting Programming Languages
#47Missing: Icon. I think Icon is a fascinating language in spite of being dynamically-typed. I've not used it in many years though. What makes Icon interesting is that its functions ("procedures" in Icon terminology) are essentially generators in that they can "fail" (prune, produce no [further] results), or "suspend" results as many times as desired. "Failure" drives backtracking. So it's Prolog-like, but with Algol-f…
Do you like writing jq? I really tried to like it, appreciated the ideas, but found even simple programs extremely hard to write in it. (Obviously, this is possibly just an artifact of me being thrown into a functional deep-end with an extremely terse syntax).
I "like" it the same way that I "like" writing XSLs: I thank my lucky stars that jq and XSLT/XPath exist, but if I didn't have to deal with JSON/XML I wouldn't use jq/XSLT. That reasoning seems circular, but at least jq is significantly more general than XSLT. Though to be fair I like jq a lot better than I like XSLT.
All functional languages tend to take some getting used to, at least for me. Now that I have a mental model of jq, I do actually enjoy using it.
The terse syntax is a double-edged sword.
Re: Interesting Programming Languages
#48Has anyone actually used these in production or a feasible side project?
Re: Interesting Programming Languages
#49Earlier quoted context omitted.
> bidirectional transformations Isn't that called an isomorphism?
Bidirectional implies bijections, for isomorphism you'll need a morphism, a function that preserves/transposes some kind of structure or internal composition law (addition, multiplication,...)
Re: Interesting Programming Languages
#50Earlier quoted context omitted.
> The list seems rather arbitrary As opposed to what list? An exhaustive one? The quality he asks of the languages in the list is "interesting", which is by definition rather arbitrary itself.
A more interesting list might be an with the first few languages to learn to cover the most good concepts. But such a list would be a lot more decisive.