all options
stretch  ] [  buster  ] [  bullseye  ] [  sid  ]
[ Source: fsm-el  ]

Package: elpa-fsm (0.2.1-2)

Links for elpa-fsm

Screenshot

Debian Resources:

Download Source Package fsm-el:

Maintainers:

External Resources:

Similar packages:

Tilstandsmaskinbibliotek

Fsm.el er en øvelse i metaprogrammering inspireret af gen_fsm for Erlang/OTP. Programmet forsøger at gøre asynkron programmering i Emacs Lisp nemt og sjovt. Ved »asynkron« mener jeg at langvarige opgaver ikke påvirker normal redigering.

Nogle siger, at det ville være godt hvis Emacs Lisp havde tråde og/eller fortsættelser. De har sikkert ret, men der er nogle få ting, som kan gøres for at køre ting i baggrunden via faciliteter allerede tilgængelige; stopure, filtre og vagtposter. Da koden kan blive en smule rodet, når sådanne metoder anvendes, med tilbagekald overalt og lignende, så kan det være nyttigt at strukturere programmet som en tilstandsmaskine.

I denne model, befinder en tilstandsmaskine sig mellem forskellige »tilstande«, som faktisk kun er forskellige funktioner for hændelseshåndtering. Tilstandsmaskinen modtager »hændelser« (fra stopure, filtre, brugerforespørgsler etc.) og reagerer på dem, muligvis ved at gå til en anden tilstand, muligvis ved at returnere en værdi.

De essentielle makroer/funktioner er: ;; define-state-machine - opret start-FOO-funktion define-state - hændelsesprogram for hver tilstand (krævet) define-enter-state - kaldes ved tilgang til en tilstand (valgfri) define-fsm - omslutter de ovenstående tre (mere sukker!) fsm-send - send en hændelse til en tilstandsmaskine fsm-call - send en hændelse og vent på svar

Fsm.el svarer til men er forskellig fra Distel: <URL:http://fresh.homeunix.net/~luke/distel/> Emacs' tq-bibliotek er en lignende ide.

Other Packages Related to elpa-fsm

  • depends
  • recommends
  • suggests
  • enhances

Download elpa-fsm

Download for all available architectures
Architecture Package Size Installed Size Files
all 9.5 kB44.0 kB [list of files]