[BUG] SmartConsole (was Re: String is: ByteArray?)
Brian Rice
water at tunes.org
Fri Dec 31 12:27:20 PST 2004
It's fixed in CVS now.
On Dec 31, 2004, at 11:01 AM, Brian Rice wrote:
> I ran into a bug after your initial check-in and testing session last
> night.
>
> Reproduction:
> Update to latest CVS, run "make get-alpha", build (with plugins), run,
> etc...
> type "load: 'src/plugins/smart-console/init.slate'."
> type "repl." when that completes.
> Type in anything, and hit the <TAB> key. You'll get a one-past-end
> Sequence access error. e.g.:
>
> Slate 15> lobb<TAB>The following condition was signaled:
> 4 is not a key in {"ExtensibleArray" $l. $o. $b. $b}
>
> On Dec 30, 2004, at 5:40 AM, Lendvai Attila wrote:
>
>> Hi!
>>
>> I've been working on encoding support for external resources and had
>> a hard time tracking down a bug. The problem was that some methods
>> had two versions, one dispatching on ByteArray and one dispatching on
>> NoRole. But as String is: ByteArray therefore I had to add another
>> version that dispatches on String.
>>
>> So my question is: is it a temporary bootstrap solution that String
>> is a ByteArray or is there some intention in it? I've added a KLUDGE
>> comment to the two extra methods that they are only there because of
>> this fact.
>>
>> Later today I'll check in my changes which include:
>> - encode:/decode: protocol for ExternalResources
>> - some refactoring in ER to use optionals
>> - Terminal line editing fixes
>>
>> There is only one issue left for the Terminal code that I'll fix
>> later today (wrapping lines) and it'll be done as far as I can see.
>> Line editing mostly works, except that I don't know what is 'yank'
>> and 'killbuffer' and therefore what the code is supposed to do.
>>
>> What is left to do is to integrate it with the parser. Line editing
>> supports continuing the edit in case it's desired. It should work so
>> that when an enter is pressed the parser is called. If the parse
>> fails, the cursor should be put at a useful position and editing
>> should continue.
>>
>> I'll try to call parser on: line and if it fails to parse an
>> expression and consume all chars then reset the parser and continue
>> editing. Or something like that... Lee, if you have some ideas... :)
>>
>> Back to coding,
>>
>> - 101
>>
>>
>>
> --
> Brian T. Rice
> LOGOS Research and Development
> http://tunes.org/~water/
>
>
--
Brian T. Rice
LOGOS Research and Development
http://tunes.org/~water/
More information about the Slate
mailing list