Hi,
Thanks for detailing your thoughts.
Indeed, I know about your application. Whatever you can do with the current GT you will be
able to do with the new one.
Except that for the new one you will be able to do extra things. Here are a few:
- You can build and share documents that embed those inspector views. This can be useful
for reporting or sharing diagnostics with your users.
- Because the underlying rendering engine is much more powerful, you can express modern
and interfaces that integrate with the rest of the environment smoothly.
- You likely have to deal with log files that might get large. First, the new editor
allows you to smoothly work with such files. But, you can go well beyond this. Imagine
that you build a tooling that produces the same editor only the text is interactive, and
you might even embed visual artifacts right in the text to bridge the gap between what you
would see in a typical console. For example, this tweet shows the new Transcript used to
debug an animation. For every animation frame, we output the text corresponding with the
frame and we insert the graphical preview corresponding to that step.
You look at GT from the point of view of an end-user. You likely like the fact that you
could mold the environment to your context and that you could do this incrementally. It
happens that the same principles and tools can be applied to the whole programming, and
once you do that, you actually can fundamentally change the act of programming. In fact,
the same thing applies to the old GT: we built the new GT using that version and we
believe that this allowed us to work much faster than if we would have used more
traditional tools. The new GT pushes the envelope significantly further.
So, that is why we are excited about that perspective, but even if you do not spend much
time programming in Pharo, you can still take advantage for the user point of view as
described above :).
Is this answer better?
Cheers,
Doru
On Dec 21, 2018, at 4:59 PM, Luke Gorrie
<luke(a)snabb.co> wrote:
On Thu, 20 Dec 2018 at 10:58, Tudor Girba <tudor(a)tudorgirba.com> wrote:
The goal of the new GT is to propose a completely reshaped programming experience that
enables moldable development. You will find the concepts from the old GT in the new world
as well. For example, the Inspector is extensible in similar ways and the API is similar
as well.
[...]
Does this address the concern?
I am not sure yet :).
Programming is not our main use case for GT. We are using GT as an object inspector (etc)
for examining diagnostic data. We have a Smalltalk application that's similar to GDB
and we are using GT as the front-end.
In our world we use the Inspector and the Spotter but all of the Smalltalk programming
views are hidden. GT is "molded" to be a diagnostic tool *instead of* a
programming environment. Specifically, our main use case is inspecting/debugging the
operation of a JIT compiler written in C. We have Smalltalk code to load binary coredumps
from the JIT, decode them using DWARF debug information, and represent the
application-level compiler data structures as Smalltalk objects. This way we can use GT to
browse generated code, cross-reference profiler data, examine runtime compilation errors,
etc.
The "old" GT is awesome for this. I feel like this application is also very
much in the spirit of the "moldable tools" thesis. Lots of diagnostic workflows
ultimately boil down to drill-down inspecting and/or searching.
I don't know where we stand with respect to the "new" GT though. I am
talking about diagnostics, you are talking about programming. I am talking about zeros and
ones, you are talking about feelings. I am maintaining a stable application, you are
talking about rewrites. I am having a hard time whether I should be switching to the new
GT in the immediate future, or waiting another year or two for it to mature, or planning
to stick with the old GT.
Hints would be appreciated :)
I reiterate that I think you guys are doing fantastic work - some of the most interesting
work in the programming universe to my mind. I hope that this discussion is useful for at
least understanding the thought process of some users / potential users.
Cheers!
-Luke
_______________________________________________
Moose-dev mailing list
Moose-dev(a)list.inf.unibe.ch
https://www.list.inf.unibe.ch/listinfo/moose-dev
--
www.feenk.com
"Being happy is a matter of choice."