On Wed, Jun 8, 2016 at 2:01 PM, Tudor Girba <[email protected]> wrote:
> Hi,
>
>> On Jun 8, 2016, at 2:04 AM, Ben Coman <[email protected]> wrote:
>>
>> On Wed, Jun 8, 2016 at 5:39 AM, Tudor Girba <[email protected]> wrote:
>>> Hi Sven,
>>>
>>> If I understand correctly, Stef talks about the case of building tests in 
>>> the debugger. There he tries an expression and then wants to capture the 
>>> result of the expression as an assertion in the code so he wants to paste 
>>> the result directly. It is a different scenario than the one of capturing 
>>> results that we store as comments for further reference.
>>>
>>> Cheers,
>>> Doru
>>>
>>>
>>>> On Jun 7, 2016, at 4:50 PM, Sven Van Caekenberghe <[email protected]> wrote:
>>>>
>>>> The #printString of most objects is not valid Pharo syntax, it makes sense 
>>>> to put those into comments, so that the overall syntax of the 
>>>> workspace/playground is maintained and syntax highlighting can operate 
>>>> normally.
>>
>> This might be too much a corner case, but I wonder...
>> If the domain object provided a sufficiently distinguishing
>> printString, then a shortcut that appended the CTRL-P result....
>>    printString = 'aDomainObject(''identifer’')
>
> I cannot quite picture what you mean. Could you elaborate. It sounds 
> intriguing?

Simple example (perhaps poor because its integers) is...
3+4
select it, <ctrl-p> <ctrl-enter>
==>
3 +4 printString = '7'.

more involved... actually nothing like a concrete example to flesh out
ideas.  The generated string should include "printString equals:"
rather than "printString =" , or even "equalsPrintString"

    Object subclass: #Person
        instanceVariableNames: 'name age'
        classVariableNames: ''
        package: 'AAAAA'

    Person>>named: aString age:  anInteger
        name := aString.
        age := anInteger

    Person>>printOn: aStream
        super printOn: aStream.
        aStream
        nextPut: $( ;
        nextPutAll: name;
        nextPut: $).

PersonTest>>setUp
    people := {
       Person new named: 'John' age: 5).
       Person new named: 'Peter' age: 7) }

PersonTest>>testAge
    self assert: (people detect: [ :p | p age = 5 ])
<ctrl-p><ctrl-enter> ==>  equalsPrintString: 'a Person(John)'.

Maybe using the printString is a bit fragile. If it changes you need
to edit all the tests. Although you could be able to just use
<ctrl-p><ctrl-enter> again and visually check the new and old results.

Maybe some other magic could happen like look up the returned value in
instance variables and insert a code reference
<ctrl-p><ctrl-enter> ==>  equals: (People at: 1)

cheers -ben

>
>> to the selected text might provide an interesting workflow for
>> developing tests in the debugger.
>> Maybe it could be CTRL-P + CTRL-T (for test) ?
>
> I proposed Cmd+p Cmd+v (from paste).
>
> Cheers,
> Doru
>
>
>> A video demo of such might provide a good example of programming in an
>> immersive environment.  What other environment could do this?
>> cheers -ben
>>
>>
>>
>>
>>
>>>>
>>>> A result printed as a comment is also easy to select (by double-clicking 
>>>> next to the $" on the inside).
>>>>
>>>> All this makes sense for literal programming (assuming that is what you 
>>>> are after).
>>>>
>>>> What is the use case for not doing it like that ? Why do you want the 
>>>> comments gone ?
>>>>
>>>>> On 07 Jun 2016, at 13:03, Ben Coman <[email protected]> wrote:
>>>>>
>>>>> On Tue, Jun 7, 2016 at 2:09 PM, stepharo <[email protected]> wrote:
>>>>>>
>>>>>>
>>>>>> Le 5/6/16 à 23:00, Tudor Girba a écrit :
>>>>>>>
>>>>>>> Hi Stef,
>>>>>>>
>>>>>>> The quotes appear only when you add the result in the playground.
>>>>>>
>>>>>>
>>>>>> No need to explain I'm not idiot and I know it.
>>>>>>>
>>>>>>> The typical use case for this is to keep track of several results.
>>>>>>
>>>>>> No need to explain I'm not idiot and I know it.
>>>>>>>
>>>>>>> In this situation you do not want to modify the code to not affect the
>>>>>>> highlighting and this is why it gets in a comment.
>>>>>>
>>>>>> This is fun because I never ever needed it. But this is probably what
>>>>>> everybody else is doing that since this is the default.
>>>>>> I just write simple code and tests. Indeed I'm not that smart.
>>>>>>
>>>>>> But your tools only embedd your scenario and let the other users forced 
>>>>>> to
>>>>>> adapt.
>>>>>>
>>>>>> Well you do not want but I do.
>>>>>> I spent my evening removing quotes while writing tests.
>>>>>>
>>>>>> What I hate with the GTTools is that you want to teach me how I should 
>>>>>> work.
>>>>>> Sorry but good tools do not do that.
>>>>>> Good tools empower the users and not constraint them.
>>>>>>
>>>>>> I work a lot faster when I do not have to remove the wonderful comments 
>>>>>> or
>>>>>> when I have to copy and paste.
>>>>>> This commenting is breaking the flow of efficient people. May be GT team 
>>>>>> do
>>>>>> not work write tests in the
>>>>>> debugger but I do most of the time and I'm forced by the environment to
>>>>>> remove quotes all over the places.
>>>>>>>
>>>>>>> If you want to copy the content without quotes, you can do:
>>>>>>> Cmd+p -> popup
>>>>>>> Cmd+c -> selects the current line and copies the text
>>>>>>> Esc
>>>>>>> Cmd+v
>>>>>>
>>>>>> Sorry but I do not want.
>>>>>> I just want to print and modify directly.
>>>>>> 7 keystrokes vs 2
>>>>>>>
>>>>>>> Perhaps we can add another keybinding like Shift+Enter for adding the 
>>>>>>> text
>>>>>>> without quotes.
>>>>>
>>>>> I just had a play with this, and another option might be <ctrl-enter>,
>>>>> since the <ctrl> key is still selection from doing <ctrl-P> so there
>>>>> is not much difference in hand movements between <enter> and
>>>>> <ctrl-enter>
>>>>>
>>>>> cheers -ben
>>>>>
>>>>>>
>>>>>> And why not the inverse.
>>>>>> By default printing is printing and if you want to do something else then
>>>>>> you have a special binding.
>>>>>
>>>>>
>>>>>
>>>>>> Now I'm upset with this general attitude (Oh I will teach how you can be 
>>>>>> a
>>>>>> nice user) that I will turn them off
>>>>>> or go and hack my own settings. Still I'm amazingly sad about this state 
>>>>>> of
>>>>>> affair.
>>>>>> All these story about GT is hurting me because of this attitude: we are 
>>>>>> so
>>>>>> smart and we thought a lot and we will teach you
>>>>>> how you should work... and at the end I the end-user has to adapt.
>>>>>> Look at the Spotter discussions: you looked for the graal and I was just
>>>>>> telling to you that I cannot find
>>>>>> simple information such as class refs!
>>>>>>
>>>>>> So what saddens me the most is that
>>>>>>  -  you pretend to have end-user trying your tools but I have impression
>>>>>> that they are not real power users
>>>>>>  or this is yourself and it means that you are never exposed to other
>>>>>> people.
>>>>>>  I can still not use Spotter because the way I put my hand on my
>>>>>> keyboard. So should change
>>>>>>      - 1 my hands
>>>>>>      - 2 my brain
>>>>>>      - 3 my keyboard
>>>>>>      - 4 do not use the tools?
>>>>>>  - funnily enough if I would not have complain aggressively then it looks
>>>>>> like we would have the same than before.
>>>>>>
>>>>>> Your flow is not mine and I go faster my way but your tools force me to 
>>>>>> get
>>>>>> slow.
>>>>>> I do not have the time to produce a video but I would even if it would 
>>>>>> give
>>>>>> a bad press to Pharo.
>>>>>> I will do a presentation in the rmod team. Because people do not watch
>>>>>> themselves why acting.
>>>>>>
>>>>>> Good tools empower the users not constraint them.
>>>>>>
>>>>>> GTTools feel often like an overengineer guitar that would have hampered
>>>>>> Jimmy Hendrix to do crazy solos.
>>>>>>
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Doru
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> On Jun 5, 2016, at 10:20 PM, stepharo <[email protected]> wrote:
>>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>> I would like to know if there is a setting to remove the "" when 
>>>>>>>> printing
>>>>>>>> the result of an expression.
>>>>>>>>
>>>>>>>> I know that playground has been thought to help me, but today I watched
>>>>>>>> myself removing the comments
>>>>>>>>
>>>>>>>> code so often that I would like to get a setting because such wrapping 
>>>>>>>> of
>>>>>>>> results is really boring for me.
>>>>>>>>
>>>>>>>> I'm spending my time removing them and I start to wonder why they are 
>>>>>>>> any
>>>>>>>> useful.
>>>>>>>>
>>>>>>>> I would help me to write fast tests for example in the debugger.
>>>>>>>>
>>>>>>>> Stef
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>> --
>>>>>>> www.tudorgirba.com
>>>>>>> www.feenk.com
>>>>>>>
>>>>>>> "What we can governs what we wish."
>>>>
>>>>
>>>
>>> --
>>> www.tudorgirba.com
>>> www.feenk.com
>>>
>>> "It's not what we do that matters most, it's how we do it."
>>>
>>>
>>
>
> --
> www.tudorgirba.com
> www.feenk.com
>
> "If you interrupt the barber while he is cutting your hair,
> you will end up with a messy haircut."
>
>

Reply via email to