Hi Florin,
Le 08/10/2014 04:45, Florin Mateoc a écrit :
Hi again,
I don't understand the self-defeating part. Indeed, I do start with
some knowledge, and because of that, initially I can come up with
some external representation, which reflects that understanding.
After staring at it enough (in its dynamic behavior), I can notice
ways to improve things. I "milk" the representation until the
initial behavior is barely recognizable. At that point it is not
helpful anymore. I need a different representation now to stare at,
since I have the nagging feeling that I am still leaving something on
the table. How do I get to the next one? Moving in the design space
sounds exactly right. So, how do you do that?
No idea yet.
I have tried to embed that kind of philosophy in the previous to last
programming language I helped design and implement, but didn't manage to
setup the right PhD subject and candidate to integrate that into the
IDE/Compiler.
I approached a visualisation 'guru' who was very interested, but we
didn't manage to get the subject / project of the ground.
It may have been a bit over-ambitious :)
That is a very nice way of expressing it, except I would still say
that it is not the visual system themselves that have the natural
abstraction capabilities, it is a specialized part of our brain that
extracts that automatically/unconsciously for us (what I called
pattern matching (since it can only identify/notice things that it
can match somehow)). But you expressed much better than I did why
this is/would be so valuable. And I will check out the reference,
thank you - the title sounds promising :).
Recommended. I also have praise on the E. Tufte books of course.
Well, same here, and right now I am busy with another spare time
project anyway (but I couldn't resist asking about your tools :) ),
but if I ever manage to get back to polish that algorithm which has
been in the back of my mind during this discussion (for the longest
common subsequence), and which I worked on just for fun anyway, but
which left me, as I said, with the nagging feeling that I could do
more (and I don't mean some peephole optimization), I will try out
some of these visualization techniques to see if anything comes out
of it.
Please explore when you'll have time, and describe what you end up with.
I have the feeling that Pharo is moving towards providing building
blocks to reuse as foundations for that kind of work: Roassal, parsers,
ASTs, traces, code models, etc... so that we may build any needed
visualisation, as Moose is using for software in the large.
I'm currently on a medium to long term quest to learn in depth / maybe
improve the AST automatic generation in SmaCC; it should give me a core
foundation (a common API for the ASTs for all langages that SmaCC can
parse) to build upon interactive visualisations IDEs for the programming
languages I'm getting involved in: yesterday C, now R, tomorrow (I hope)
Fortran and Python. But this is more about static analysis than runtime
behavior analysis, unless I turn to VectorFabrics underlying tech...
Hum, this one is ... interesting. It opens new ideas. Thanks a lot, this
is really great!
Thierry