Is Backward chaining supported? Are there any examples? - rule-engine

I am evaluating durable-rules against Drools and I see mention of "Backward chaining" in Drools documentation - but not in durable-rules.
Is this feature supported by durable-rules? Is there an example?

thanks for asking the question. durable-rules doesn't support backward chaining. It is in the plans for future support.

Related

It is possible to Integrate Activiti with Drools rule engin

I am working on a project and trying to evaluate Drools vs Activiti.
I know there is jBPM support but my client needs Activiti for managing the business flow and I need to use rule engin for evaluating some cases.
So is it possible to integrate drools and activity. Any pointer would help.
As I mention in the Gitter channel this is totally possible.
I will recommend you to do a small PoC (Proof of Concept) to really understand the details of it. People usually underestimate the complexity of a Rule Engine like Drools. Don't get me wrong, I love Drools, but I recommend you to check the docs and one of their books ;)
Check out the chapter in Tijs Rademaker's book "Activiti in Action". It describes the drools integration for version 5.x of Activiti very completely. The concepts are still valid for Activiti 6 as well.

What is simplest reactive programming language?

I teach a course in Programming Paradigms. Last year I used Elm as an example of (Functional) Reactive Programming. This summer I noticed that Elm is no longer FRP (according to http://elm-lang.org/blog/farewell-to-frp). I'm looking for another vehicle, one for which I don't have to first teach a lot of syntax.
Reactive Programming in JavaScript seems way too complex. My students will have learned some Scala, but I haven't found a good tutorial on RP in Scala.
Suggestions, anyone? Requirements: reactive, simple syntax.
You can also check Reactor for Spring ecosystem https://github.com/reactor/reactor-core/blob/master/README.md
I suggest RxJava with Java8. It is well documented and maintained. There is a lot of materials- books, articles, tutorials, conference talks, etc.
'reactive, simple syntax'..
I do not see much in common between syntax and being reactive. Java8 has excellent free IDE support (Intellij or Eclipse). For me, it is important in learning new language than paradigim- more important than language itself.

JavaScript Use-API vs Java Use-API

Is there any known limitation/restriction on using JavaScript Use-API?
Reading adobe documentation (links below) there is no comparison between the two technologies.
Do you know something that can't be accomplished by using JavaScript Use-API that would require to use Java Use-API? Is JavaScript Use-API a subset of Java Use-API? Are they fully compatible?
Thank you.
https://docs.adobe.com/docs/en/aem/6-0/develop/sightly/use-api-in-javascript.html
https://docs.adobe.com/docs/en/aem/6-0/develop/sightly/use-api-in-java.html
Please notice that this is NOT a question about: "do you prefer this or that?" or "what is you personal choice?" The purpose of my question is only to know if there are known limitations of JavaScript API over Java API
No. there are no limitations functionality wise. whatever can be done using java use api can be done using javascript api.
A (very) brief pros and cons analysis is available here.
Edit: as pointed out by vlad, js is compiled into java by Rhino which has some limitations as documented here.

How to build a ConcurrentLinkedHashmap using Guava?

Several links show that https://code.google.com/p/concurrentlinkedhashmap/ has been ported to Guava, but I can not find the corresponding API in Guava.
Can anybody show me an example to build a ConcurrentLinkedHashmap using Guava ?
Thanks!
ConcurrentLinkedHashmap API wasn't ported to Guava 1:1, but some solutions from CLHM were used in MapMaker and Cache (with CacheBuilder).
ConcurrentLinkedHashmap's author Ben Manes answers a question which may clarify your doubts: What does it mean that ConcurrentLinkedHashMap has been integrated into Guava?:
Guava is the long term replacement and most of the time you should use it. The history is that ConcurrentLinkedHashMap figured out the algorithms, Guava subsumed it, and then focused on adding features.
I think it's also important to note that he's currently writing another library which may suit your needs:
Caffeine is a Java 8 rewrite of Guava's cache. It tries to provide the best of ConcurrentLinkedHashMap and Guava, modernized with Java 8, and adopting the techniques that I've learned since those previous projects.

How do I implement neo4j in scala?

I planning to implement neo4j in my project and wanted to use scala.
Could anyone suggest whether to use neo4j-scala wrapper(https://github.com/FaKod/neo4j-scala/)
or should I implement from the scratch?
Also is there any documentation for neo4j-scala wrapper (and also looking for some examples)?
You can also use https://github.com/wfreeman/AnormCypher which is very nice.
This is a duplicate. I'd suggest to look at gremlin-scala. Disclaimer: I'm the maintainer ;)