2009-07-20 5 views
1

Je voudrais porter le psychothérapeute Emacs à C :) mais je voudrais savoir où je peux trouver le code source. Ce dont j'ai peur, c'est que c'est écrit en Lisp. Si c'est le cas je pense que je n'aurai pas de chance de le porter à C à moins que quelqu'un ne l'ait déjà fait.Emacs Psychothérapeute: Où puis-je trouver le code?

Tous les pointeurs seraient appréciés (jeu de mots n'a pas pour but!)

+10

Alors vous pensez que vous réussirez à le porter uniquement si quelqu'un d'autre l'a déjà fait? Agréable. –

+2

En regardant le LISP, le porter à C va être difficile. Vous pouvez toujours invoquer d'abord http://en.wikipedia.org/wiki/Greenspun%27s_Tenth_Rule une fois que c'est fait, le reste du port devrait être facile. ;-) – bendin

+0

pourquoi le port? Pourquoi ne pas intégrer tout ce que vous avez avec le docteur Lisp? – Cheeso

Répondre

6

Que contient Emacs i? s une variante de Eliza, donc vous pourriez vouloir commencer à chercher là. Ce lien répertorie de nombreux endroits pour obtenir différentes versions de la source.

Le portage de Lisp vers C est certainement faisable, mais il y a une approche suffisamment différente dans ces langages pour rendre les choses difficiles.

Voici une version du good doctor, écrite en C++. Ou il y a un general description of how it works. Eliza est le seul médecin qui a eu plus de vies que Doctor Who!

10

It's in emacs-lisp.

Tout simplement parce que ça fait quelque temps que je pète le médecin:

I am the psychotherapist. Please, describe your problems. Each time you are 
finished talking, type RET twice. 

Where is your source code? 

Why do you say 
where is my source code? 
16

Pour ce genre de chose, c'est pratique à connaître

M-x find-function doctor