One more thought on this... I assume you've seen Jupyter Notebooks? They're starting to see some use where I work (we now have our own 'enterprise server'). I recently took an intro class to see how it works, and how to use them.
How much of a "Jupyter-style" notebook capability would the community be interested in? By that I mean having the ability to mix 'rich' documentation with code and data to produce interactive 'notebooks' with similarities to what Jupyter does -- but simpler! Jupyter is much too complicatedâ¦
I would not go that road for class and package comments. Now we have a good infrastructure for doing this with Pillar.
What you describe for enhanced comments sounds like a step in that direction... Obviously Pharo is already oriented toward mixing code and data in one document, and enhancing the comments moves it closer to a notebook with richer documentation possibilities.
So it seems to me that generalizing this "enhanced document capability" and making it more prominent (such as giving it its own type of window, rather than it being a browser pane tied to the code?) would take it closer yet to realizing a general, flexible "Pharo Notebooks" concept.
In the future (once I have finished making sure that we can write book in microdown) we could think about loading book in notebooks with a bit more liveness. Now it requires man power and we are busy on other topics. GT is already doing it.
My understanding is that Offray's Grafoscopio is essentially what I'm describing, but maybe more oriented to data analysis & presentation..?? (He can say better than I, as I'm not sure how accurate that is.) I am thinking of something that would include that, but maybe be more general-purpose.
Part of this idea is to feature a "semi-automated" subset of Spec2 that makes it easier to get nice graphical UIs in a notebook fashion -- but does not require as much depth of understanding Spec2. (All of Spec2 allows anyone to build anything.. but not everyone needs to build so much..? This is the value of frameworks and selectable motifs, yes?)
Could what I'm describing be a way for everyone to step easily into Spec2 when its full flexibility for making GUIs isn't needed (yet)? By this I'm implying code generators that create common/typical Spec2 framework classes & methods that would make up the front-end of the 'documentation' element of "Pharo Notebooks". Pharo being Pharo, one could then customize furtherâ¦
To me documenting framework is another level. For now I would be more than happy if we would have a good old way book containing tutorials about Spec2.
Because "it's always easier to edit something than to create from a blank page", yes?
I can see Pharo taking away "market share" from Jupyter Notebooks, by being simpler and easier to work with. Data + Code + Document: All three elements being "live" and interactive. Pharo has the first two.. What about the third?
Having a document renderer is a first step then after we can decide what is the semantics of certain boxes inside the texte and get some live and others not. But this requires coding effort. S.