Both sides previous revision
Previous revision
Next revision
|
Previous revision
Last revision
Both sides next revision
|
prolog_integration [2010/03/02 12:47] michal_bida |
prolog_integration [2010/10/15 08:52] jakub_gemrot |
<html><table border="0"> | <html><table border="0"> |
<tr> | <tr> |
<th style="font-weight:normal;">You will gain expertise in</font>:</th> | <td width="130" style="border-bottom: 1px solid lightgray;">Name:</td> |
<th> </th> | <td> </td> |
<th><font color="blue">Java, Java Reflection API, Java Annotations, Prolog</font></th> | <td><font color="blue">Prolog integration</font></td> |
</tr> | </tr> |
<tr> | <tr> |
<th style="font-weight:normal;">Difficulty:</th> | <td width="130" style="border-bottom: 1px solid lightgray;">You will learn:</td> |
<th> </th> | <td> </td> |
<th><font color="blue"> | <td>Java, Java Reflection API, Java Annotations, Prolog</td> |
| </tr> |
| <tr> |
| <td style="border-bottom: 1px solid lightgray;">Difficulty:</td> |
| <td> </td> |
| <td><font color="red"> |
hard | hard |
</font></th> | </font></td> |
| </tr> |
| <tr> |
| <td style="border-bottom: 1px solid lightgray;">Excitement:</td> |
| <td> </td> |
| <td><font color="blue"> |
| Prolog is well-known in academy therefore it would contribute greatly to Pogamut platform. Also many decision making architectures such as AgentSpeak(L)-derivates use Prolog as a working memory. Prolog would open doors to further enhancements. Also, you will learn a lot about Java and Prolog along the way!</font></td> |
</tr> | </tr> |
<tr> | <tr> |
<th style="font-weight:normal;">Excitement:</th> | <td style="border-bottom: 1px solid lightgray;">Description:</td> |
<th> </th> | <td> </td> |
<th><font color="blue"> | <td><font color="default"> |
Prolog is well-known in academy therefore it would contribute greatly to Pogamut platform. Also many decision making architectures such as AgentSpeak(L)-derivates use Prolog as a working memory. Prolog would open doors to further enhancements. Also, you will learn a lot about Java and Prolog along the way!</font></th> | Your goal is to adapt</html> [[http://alice.unibo.it/xwiki/bin/view/Tuprolog/|tuProlog]]<html> to be able to unify Java beans. We already have a prototype that translates plain Java objects (or POJOs if you prefer) into Prolog facts. Now the big step would be to dig into tuProlog implementation and change it so that the serialization into Prolog facts is not necessary. After all, annotated POJO may fully represent a Prolog fact treating 'null' value as an anonymous variable! Of course there are few obstacles, for instance, every null seems to be a different variable... such issues would be up to you to solve. |
| </font> |
| </td> |
</tr> | </tr> |
<tr> | <tr> |
<th style="font-weight:normal;">Description:</th> | <td style="border-bottom: 1px solid lightgray;"> |
<th> </th> | Further readings: |
<th><font color="default" style="font-weight:normal;"> | </td> |
Your goal is to adapt</html> [[http://alice.unibo.it/xwiki/bin/view/Tuprolog/|tuProlog]]<html> to be able to unify Java beans. We already have a prototype that translates plain Java objects (or POJOs if you prefer) into Prolog facts. Now the big step would be to dig into tuProlog implementation and change it so that the serialization into Prolog facts is not necessary. After all, annotated POJO may fully represent a Prolog fact treating 'null' value as an anonymous variable! Of course there are few obstacles, for instance, every null seems to be a different variable... such issues would be up to you to solve.<br/><br/> | <td> </td> |
Further readings:</html> [[http://tuprolog.alice.unibo.it/|tuProlog]], [[http://www.sics.se/sicstus/docs/4.1.1/html/sicstus/Interfacing-_002eNET-and-Java.html|Java Beans in SICStus Prolog]]<html> | <td></html> [[http://tuprolog.alice.unibo.it/|tuProlog]], [[http://www.sics.se/sicstus/docs/4.1.1/html/sicstus/Interfacing-_002eNET-and-Java.html|Java Beans in SICStus Prolog]]<html> |
| </td> |
</tr> | </tr> |
</table></html> | </table></html> |
| |