Version 4 of RMMADWIM

Updated 2004-07-29 10:21:29 by suchenwi

Read My Mind And Do What I Mean - a frequently requested functionality

See TIP 131 [L1 ]

RS 2004-07-28 - The RMM part still awaits implementation, but if you transport mind over stdin, here's an initial implementation:

 proc do args {
    puts [uplevel 1 $args]

 proc what {who verb} {
    puts -nonewline "what do you $verb? "
    flush stdout
    uplevel 1 [gets stdin]

 while 1 {do what I mean}

PT 2004-07-29 The division between the functional aspects of RMMADWIM into RMM and a separate DWIM leads me to think about alternative transports than just stdin. The implementation above could trivially be recoded as a network server or even a Web service. Sticking with KISS I consider that the ideal network protocol for the correct transport of DWIM data will be the LOAF protocol. LOAF is unique compared to other network protocols in that everything is specified to just work which is in keeping with the spirit of the RMMADWIM specification. RS Hm.. but LOAF does nothing, doesn't it? The code above implementes at least the classic read-eval-print loop as known from Lisp, or any interactive tclsh... :)

Category Acronym