summaryrefslogtreecommitdiffstats
path: root/2024/talks/mcclim.md
blob: 432a01801f35b1e8438e81068add0d0ceac33469 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
[[!meta title="Elisp and McCLIM"]]
[[!meta copyright="Copyright © 2024 screwlisp"]]
[[!inline pages="internal(2024/info/mcclim-nav)" raw="yes"]]

<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
<!-- You can manually edit this file to update the abstract, add links, etc. --->


# Elisp and McCLIM
he or e/em/eir (Spivak, male and neuter pronouns are fine) - IRC: screwlisp, Mastodon: @screwtape@mastodon.sdf.org liberachat: screwlisp MOO: lambda.moo.mud.org Name: screwtape Moo mail preferred

[[!inline pages="internal(2024/info/mcclim-before)" raw="yes"]]

The gist is demoing using McCLIM common lisp interface manager
implementation to make Sandewall 1978's lisp iconic example
scheduler app, but to drive it to and from emacs lisp via slime
and swank.

To start with, a beginner walkthrough on getting slime and
common lisp and mcclim, and configuring and using them with
emacs org-mode.

The default clim application-frame is made and its interactor
used.

A CLIM command is then defined to refer the default describe to
emacs lisp rather than the inferior lisp.

CLIM useage with no gui via slime / org-mode is demoed.

This is then used via emacs lisp.

CLIM's accepting-values is used to generate an anonymous gui
that accepts a value **into elisp**.

A small final discussion on integrating the clim scheduler back
and forth into org-agenda.

Bib:

```
      @article{sandewall1978programming,
        title={Programming in an Interactive Environment:
    the``Lisp''Experience},
        author={Sandewall, Erik},
        journal={ACM Computing Surveys (CSUR)},
        volume={10},
        number={1},
        pages={35--71},
        year={1978},
        publisher={ACM New York, NY, USA}
        }
    
        @inproceedings{strandh2002free,
        title={A free implementation of clim},
        author={Strandh, Robert and Moore, Timothy},
        booktitle={International Lisp Conference Proceedings},
        year={2002}
        }
    
        @article{fruhwirth2006guided,
        title={A Guided Tour of CLIM, Common Lisp Interface Manager},
        author={Fruhwirth, Clemens},
        journal={Lisp Pointers},
        year={2006}
        }
    
        @article{kochmanskimcclim,
        title={McCLIM Demonstration},
        author={Kochmanski, Daniel}
        }
    
        @inproceedings{kochmanski2020ecl,
        title={On ECL, the Embeddable Common Lisp (ELS keynote).},
        author={Kochmanski, Daniel},
        booktitle={ELS},
        year={2020}
        }
    
        @misc{beane2012quicklisp,
        title={Quicklisp},
        author={Beane, Zach},
        year={2012}
        }
    
        @misc{marsden2003slime,
        title={SLIME: The superior lisp interaction mode for emacs},
        author={Marsden, Eric and Gorrie, Luke and Eller, Helmut and others},
        year={2003},
        publisher={URL: https://common-lisp. net/project/slime/(visited on
    05/19/2017)}
        }
    
        @article{dominik2004org,
        title={Org mode manual},
        author={Dominik, Carsten},
        year={2004}
      }
```

About the speaker:

I'm screwlisp from the lispy gopher climate, a weekly Wednesday
000UTC podcast (non-radio show) on aNONradio.net powered by sdf.org;
(also the lesser-known Friday 1400UTC show, Zhen House Zhen Bonkwave.

We are fortunate to have many great people in our live chat that
happens in LambdaMOO during the shows. Last week, we shared Rog's
new writing on his current personal emacs modes with his decades
of emacs useage. (Roger Crew). That's not what this talk is about
though, though we often deal with emacs and McCLIM, which **are** what
this talk is about. I have many friends who picked those up in some
small part thanks to the show.



[[!inline pages="internal(2024/info/mcclim-after)" raw="yes"]]

[[!inline pages="internal(2024/info/mcclim-nav)" raw="yes"]]