4 ms·
Both your list and your comments look good, generally, but I have to wonder about your mention of logic programming. I think logic programming has a lot to off
by ggchappell 16y ago
Both your list and your comments look good, generally, but I have to wonder about your mention of logic programming.
I think logic programming has a lot to offer the world, in theory, but in practice it seems to be pretty much dead. True, there is probably more going on with Prolog now than, say, a decade ago. But widespread use is not happening, nor is inclusion of logic-programming features into other languages. Further, I don't see this changing in any truly significant way in the near future.
Apparently, you do see it changing. Would you care to comment on that?
- silentbicycle 16y agoTwo visible things to come out of logic programming are Erlang and constraint programming. Both are very significant, in their own niches. I don't think Prolog is dead yet, either.
- EdiX 16y agoErlang is not a logic programming language. They started with a logic programming language and eventually removed every feature that made it a logic programming language.
- silentbicycle 16y agoHence, "to come out of logic programming". It's declarative, but not an LP per se - backtracking really clashes with the priority on (soft) real-time behavior and concurrency. The Prolog origins are probably most visible in the syntax and emphasis on pattern-matching.
- gtani 16y agoCorrect, what's left in erlang from prolog is the pattern matching syntax for function definition, where you have multiple clauses to test, sequentially, whether runtime args match the number and types of parameters in each clause (and values, if guards are used). No unification/backtrackig involved.
- deleted 16y ago[deleted]
- swannodette 16y agoI will make some heretical statements. I think unit-testing sucks. I think current type systems are overrated. Logic programming + meta-programming as well as Logic programming powered RTEPLs (Read-Typecheck-Eval-Print-Loop) can give us optional rich, strong guarantees without adversely affecting runtime performance. This is a space that needs more exploration.