He wanted to have a key-binding/structured editing where you would
introduce a new form where the editor knew what the pieces would be.
So if you did Ctrl-Define (whatever) it would insert

(define _ _)

You would then tab to one of the _s.

We talked about also doing things like Ctrl-Map or Ctrl-ListProc and
tab through different list-ing options. We talked about having a key
binding for "Get an identifier in scope" (which it would then tab
through inside out) vs "Fresh expression"

Jay

On Tue, May 4, 2010 at 1:00 PM, Matthias Felleisen <matth...@ccs.neu.edu> wrote:
>
> How?
>
>
> On May 4, 2010, at 2:53 PM, Jay McCarthy wrote:
>
>> I think Guillaume ideas for editor templates and macros would be a
>> Racket analogue to this idea. Partially implemented in DivaScheme
>>
>> http://www.cs.brown.edu/research/plt/software/divascheme/
>>
>> Jay
>>
>> On Tue, May 4, 2010 at 12:49 PM, Matthias Felleisen
>> <matth...@ccs.neu.edu> wrote:
>>>
>>> The other day when Simon PJ lectured here in Olin's compiler class (thanks, 
>>> volcano), he mentioned that he was jealous of one thing in OO PLs: auto 
>>> completion. You write down "anObject." and you immediately get all possible 
>>> methods that you can apply here and you continue to guess your way thru 
>>> program construction. (My words as you can tell if you know Simon.)
>>>
>>> Of course this isn't about FP vs OOP. It's about two different points:
>>>
>>> 1. syntax: OOP guys write down the first argument first (this) and then the 
>>> method call and that is the way syntax works. I see nothing wrong with 
>>> writing down
>>>
>>>  aList.
>>>
>>> getting 2 possible completions in BSL/2:
>>>
>>>  -- length
>>>  -- reverse
>>>
>>> choosing one, say length
>>>
>>> and having the editor insert it like that:
>>>
>>>  (length aList)
>>>
>>> If I allow the editor to manipulate my writings, why not be a tad more 
>>> radical than add a word at the current position.
>>>
>>>
>>> 2. Types. You need some restriction on the space in which you search and 
>>> you might as well use types. So perhaps in Typed Scheme we should be able 
>>> to change the IDE so it behaves like the above.
>>>
>>> Ah, but we also have history against us. Who would have thought that 
>>> (lambda (x) (make-posn 0 x)) is the first argument for mapping over a list 
>>> of numbers?
>>>
>>> Is it really hopeless for us? -- Matthias
>>>
>>>
>>> _________________________________________________
>>>  For list-related administrative tasks:
>>>  http://list.cs.brown.edu/mailman/listinfo/plt-dev
>>>
>>
>>
>>
>> --
>> Jay McCarthy <j...@cs.byu.edu>
>> Assistant Professor / Brigham Young University
>> http://teammccarthy.org/jay
>>
>> "The glory of God is Intelligence" - D&C 93
>
>



-- 
Jay McCarthy <j...@cs.byu.edu>
Assistant Professor / Brigham Young University
http://teammccarthy.org/jay

"The glory of God is Intelligence" - D&C 93
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-dev

Reply via email to