Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

exercice de style: Single Class Object Model

3 views
Skip to first unread message

micha

unread,
May 17, 2012, 8:06:08 PM5/17/12
to
Single Class Object Model: ceci est un exercice de style minimaliste
et constructiviste consistant à concevoir un Modèle Objet autour d'une
seule et unique classe. Le but est qu'elle soit le plus agnostique
possible (le moins d'hypoythèses possible sur la façon dont elle sera
utilisée), tout en restant utilisable et apte à implémenter des
applications de complexité arbitraire (c'est l'intention tout du
moins...).
Le principe de base consiste:

- D'une part à reproduire un réseau sémantique sous forme de triplets,
comme dans le langage RDF ("The underlying structure of any expression
in RDF is a collection of triples, each consisting of a subject, a
predicate and an object")
- D'autre part à s'inspirer de la programmation fonctionnelle, le
langage LISP en particulier, dans lequel toute entité peux être
évaluée et retourner un résultat (du simple entier à l'algorithme).
Dans l'API (!!) il suffit donc d'une seule méthode: 'evaluate', qui
devra bien sûr être redéfinie dans des classes dérivées pour en
implémenter une application (Attention !! les classes dérivées ne
doivent ajouter pas de méthodes à l'API constituée par la classe
unique du modèle objet, sinon le paradigme de 'Single Class Object
Model' est détruit)

NB: J'ai commencé l'implémentation d'un prototype d'interpréteur Lisp
comme 'Proof Of Concept"

Sur GitHub: https://github.com/terimakasi/scom

Yliur

unread,
May 20, 2012, 4:21:55 PM5/20/12
to
Le Thu, 17 May 2012 17:06:08 -0700 (PDT)
micha <ludi...@gmail.com> a écrit :
Oui, autant écrire directement l'interpréteur Lisp.

Il y a un objectif particulier ?

Si le but est d'avoir quelque chose comme Lisp sur une JVM, il y a par
exemple ABCL, une implémentation de Common Lisp pour la JVM.

micha

unread,
May 20, 2012, 4:50:58 PM5/20/12
to
On 20 mai, 22:21, Yliur <yl...@free.fr> wrote:
> Le Thu, 17 May 2012 17:06:08 -0700 (PDT)
> micha <ludic...@gmail.com> a écrit :
Merci pour votre réponse
Non le but n'est pas d'implémenter un interpréteur Lisp (c'est juste
un 'sample'). Le proket 'SCOM' (Single Class Object Model) est un
exercice constructiviste et minimaliste dont le but est d'illustrer
qu'il est possible de s'appuyer sur un Modèle Object/Framework
constitué d'une seule classe (cf. "It.java" sur https://github.com/terimakasi/scom)
afin de mettre en lumière que le 'réseau sémantique' des instances
(inspiré du RDF/SemWeb) est 'nécessaire et suffisant' pour développer
une application
0 new messages