Can Pharo meet all your computing needs?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
23 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Can Pharo meet all your computing needs?

WilfredHughes
Hi folks

I've been playing with Pharo recently, and really enjoying writing some programs in the Pharo environment.

As a result, I've been wondering if I can use Pharo the way I would use Emacs, as an environment for doing everything.

For example, can I use Pharo to:

* Send emails to this mailing list?
* Use IRC?
* Start Bash?
* Read the Pharo documentation (e.g. Pharo By Example)?

If these things do exist, how do I discover them? Is there a package manager I can use to find new tools I can use in Pharo?
Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

kilon.alios
"Hi folks

I've been playing with Pharo recently, and really enjoying writing some programs in the Pharo environment."

Hello and welcome to the Pharo family

"As a result, I've been wondering if I can use Pharo the way I would use Emacs, as an environment for doing everything."

No Pharo is a different beast, but beast none the less. Each one has its pros and cons. Emacs is more for CL and text editing stuff and excels at that . Pharo is more for GUI and Graphics stuff and it excels at that. Emacs is more popular and more actively developed but Pharo comes with a very powerful programming language and much more performant than elisp. Personally I use both Emacs and Pharo , I love both and I find both awesome. I use emacs for documenting stuff for Pharo , like my contribution to updating the Pharo By Example book to Pharo 3 and 4. 

"* Send emails to this mailing list?"

I think there are libraries for dealing with emails, I dont think there is an actual email client for Pharo though if my memory serves me correctly I remember a email client for Squeak. So its definitely doable with Pharo. 

"* Use IRC?"

Again I think there is no client for this,  definitely a cool project , again doable with Pharo because it has very good support for sockets and IRC is a rather simple socket protocol. I use sockets extensively for my project "Ephestos" to make Pharo talk to Python and use Python libraries from inside Pharo even with Pharo syntax. Using sockets is actually very simple.

"Start Bash?"

Pharo has a command shell, similar to emacs eshell. But I dont know how powerful it is and if it has full shell support but for basic stuff it works as I have tested it personally but I prefer using Xterm 2 .

If you mean call shell scripts thats doable too, also pharo can be called from the terminal and used as a bash tool , so you have many options here. 

" Read the Pharo documentation (e.g. Pharo By Example)?"

No you cant read (AFAIK) Pharo By Example from inside Pharo but there is a help tool similar to emacs help tool. Unfortunately it has not been the preferred choice for documenting stuff. On the other hand Pillar which is a quite popular choice for Pharo documentation works on top of Latex and can export to html , markdown and pdf and of course text files. So documentation wise I think Pharo is more powerful than Emacs in what it can do. 

Because I happen to use Pillar a lot for updating Pharo By Example I really like it so far and I think Pharo devs have done a very good job with it. I think also because pillar syntax is  very simple it should not be too hard to make pillar files viewable from inside Pharo. So I think we are close with that target too. 

" Is there a package manager I can use to find new tools I can use in Pharo"

yes its called "configuration browser" and comes included with Pharo. If you get a latest Pharo 3 image you should already seen a lot of packages in the configuration browser, Installing them is also a single action process. 

"If these things do exist, how do I discover them?"

the old trusted process of googling . Here some links that google returned to me 







 

Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Sean P. DeNigris
Administrator
kilon.alios wrote
I've been wondering if I can use Pharo the way I would use
Emacs, as an environment for doing everything."
This is the dream - the Dynabook vision. Smalltalk was a protoype exploration of JCR Licklider's dream, articulated in the early 60s "to become interactive intellectual amplifiers for all people", or as Dan Ingalls put it "to provide computer support for the creative spirit in everyone". There is no reason why Pharo should not be able to do this. Indeed it is why its lineage exists in the first place. The only thing necessary is the effort to implement the features that matter to you.

kilon.alios wrote
"* Use IRC?"
I remember there is at least one project, but would probably have to be ported to a current Pharo version

kilon.alios wrote
Pharo has a command shell, similar to emacs eshell
I've experimented with it quite a bit. The features are very impressive when you dig into it.

kilon.alios wrote
" Read the Pharo documentation (e.g. Pharo By Example)?"
This - unfortunately - is the weakest point of all the features you have mentioned. While multimedia is an essential part of the Dynabook vision, standards and formats have been moving so quickly and becoming so complicated that our community's resources are overwhelmed, and it seems we have mostly conceded here, although there are some bits and pieces lying around and now-a-days with all the FFI/NB advancements, a quick hack would be to wrap existing external libraries.

kilon.alios wrote
" Is there a package manager I can use to find new tools I can use in Pharo"
We are moving closer and closer to this, but don't yet have one central catalog.

Anyway, welcome! What you're suggesting is a dream for many of us. We've been focusing these last few years on infrastructure to make it more practical. Let's make it happen :)

- Sean
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

kilon.alios
For Emac and Pharo is common practice to build a monolithic environment where everything is reimplemented. Emacs has its own email client, git client, command shell, irc client etc etc. But then this lead me to ask the question "Why fight them when you can join them" . 

The problem with existing solutions , however clumsy , inconvenient and uncool they are. They are just that, solutions. 

I get how Alan Kay disapproves of modern iPads and many other modern technologies BUT his dynabook is vaporware. However emacs and pharo are cool and powerful they cannot compete with those specialised tools that have been in development in some cases for decades . 

So that led me to my second question "Why fight them , when you can join them ?" which is why it started with emacs eshell and ended up with Xterm2. 

However still missing all the coolness of Pharo and the language and the tools it has triggered a new question "why join when you can enslave them ?". Parasites after all are difficult to like but they happen to be one of the most powerful organisms on this planet and they are very efficient ,like viruses. 

So now I am exploring the concept of how Pharo can control all these apps without me having to reimplement these apps in Pharo which is just an insane amount of work to code and maintain.  In my case it was not difficult to reach this conclusion since reimplementing Blender in Pharo would be an insane if not impossible amount of work for a single developer. At first I was very sceptical trying to use sockets as a way to control Blender but now I see this actually can work very well. It has its limitations but its light years easier and more efficient than the alternative. 

It raises some interesting questions, how Pharo can control gmail, or thunderbird, or irc client like mirc and KVIRC and XChat, or the web browser (amber could play a very important role here) or many thousands of apps out there. We certainly have the libraries to do this. 


On Sun, Aug 24, 2014 at 2:47 AM, Sean P. DeNigris <[hidden email]> wrote:
kilon.alios wrote
> I've been wondering if I can use Pharo the way I would use
> Emacs, as an environment for doing everything."

This is the dream - the Dynabook vision. Smalltalk was a protoype
exploration of JCR Licklider's dream, articulated in the early 60s "to
become interactive intellectual amplifiers for all people", or as Dan
Ingalls put it "to provide computer support for the creative spirit in
everyone". There is no reason why Pharo should not be able to do this.
Indeed it is why its lineage exists in the first place. The only thing
necessary is the effort to implement the features that matter to you.


kilon.alios wrote
> "* Use IRC?"

I remember there is at least one project, but would probably have to be
ported to a current Pharo version


kilon.alios wrote
> Pharo has a command shell, similar to emacs eshell

I've experimented with it quite a bit. The features are very impressive when
you dig into it.


kilon.alios wrote
> " Read the Pharo documentation (e.g. Pharo By Example)?"

This - unfortunately - is the weakest point of all the features you have
mentioned. While multimedia is an essential part of the Dynabook vision,
standards and formats have been moving so quickly and becoming so
complicated that our community's resources are overwhelmed, and it seems we
have mostly conceded here, although there are some bits and pieces lying
around and now-a-days with all the FFI/NB advancements, a quick hack would
be to wrap existing external libraries.


kilon.alios wrote
> " Is there a package manager I can use to find new tools I can use in
> Pharo"

We are moving closer and closer to this, but don't yet have one central
catalog.

Anyway, welcome! What you're suggesting is a dream for many of us. We've
been focusing these last few years on infrastructure to make it more
practical. Let's make it happen :)

- Sean



-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/Can-Pharo-meet-all-your-computing-needs-tp4774250p4774304.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

stepharo
In reply to this post by WilfredHughes

> Hi folks

Welcome :)
>
> I've been playing with Pharo recently, and really enjoying writing
> some programs in the Pharo environment.
I'm happy to hear that.
> As a result, I've been wondering if I can use Pharo the way I would
> use Emacs, as an environment for doing everything.
Basically yes.
> For example, can I use Pharo to:
>
> * Send emails to this mailing list?
     Yes. In the past there was Celeste an email client.
> * Use IRC?
     There was a client somewhere
> * Start Bash?
If you ask me, I would like to we able to write pharo programs and run
them headless and one error get a debugger, edit/debug the script and
press continue and gte my script fixed.
> * Read the Pharo documentation (e.g. Pharo By Example)?
     With GT-inspector you can edit pillar file and we were thinking
that it should not be that difficult to write a little renderer

>
> If these things do exist, how do I discover them? Is there a package
> manager I can use to find new tools I can use in Pharo?
Some of them are old
     - look on squeakmap (they may not work directly in Pharo_
     - look on squeaksource
     - look on smalltalkhub

Now we are slwoly building an infrstructure where published packages
will be validated for a distribution and a catalog will be
automatically built.

stef


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Ichiseki
This post was updated on .
This a very interesting topic.
Some time ago I was taking a look at a Tektronik flyer I found on the Internet and seems that in those days, the concept of Smalltalk was that it completely replaced the OS. Or perhaps is more accurate to say that Smalltalk was the OS and the Development Environment.
I would love to see some kind of Pharo OS with applications inside Pharo.
The OS could be done using the Linux Kernel and some GNU tools. Now I bet that for this project would be perfect to have a 64bit VM, isn't it?

I'm too was looking to read pdfs, read and manage email, surf the web, etc.

best

Ichiro

PS: BTW, Wilfred. Is that a GO board? ;)
Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

kilon.alios
SqueakNOS went towards that direction 



On Sun, Aug 24, 2014 at 11:34 PM, Ichiseki <[hidden email]> wrote:
This a very interesting topic.
Some time ago I was taking a look at a Tektronik flyer I found on the
Internet and seems that in those days, the concept of Smalltalk was that it
completely replaced the OS. Or perhaps is more accurate to say that
Smalltalk was the OS and the Development Environment.
I would love to see some kind of Pharo OS with applications inside Pharo.
The OS could be done using the Linux Kernel and some GNU tools. Now I bet
that for this project would be perfect to have a 64bit VM, isn't it?

I'm too was looking to read pdfs, read and manage email, surf the web, etc.

best

Ichiro




--
View this message in context: http://forum.world.st/Can-Pharo-meet-all-your-computing-needs-tp4774250p4774465.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Sean P. DeNigris
Administrator
In reply to this post by kilon.alios
kilon.alios wrote
his dynabook is vaporware
The Dynabook is a vision of what computing could be, not a product, and so can not be vaporware i.e. announced but not delivered. Looked at another way, you are using a Dynabook, since Smalltalk was an iteration of an attempt to implement of this vision.

kilon.alios wrote
"Why fight them , when you can join them?"
The problem is that "them" = "a pile of code so complicated that it's beyond the ability of a single human being to understand". When you make a choice to use [ GNU/Linux | OS X | Windows ] + "suite of applications that are so cool I can't live without", you end up with LOC equivalent to the entire Library of Congress, impossible to understand, and requiring countless context switches for all the languages and technologies involved. After spending the time to dig into this mess in a few places where you want to customize, you are lucky if you have any energy left over to create whatever your vision originally was, for which the computer seemed like the perfect tool.

kilon.alios wrote
So now I am exploring the concept of how Pharo can control all these apps
without me having to reimplement these apps in Pharo which is just an
insane amount of work to code and maintain
Of course this is better than nothing ;) It's a great way to fast-forward to the system of our dreams - make it work, then make it right. And at the same time I think it's important to remember that Smalltalk exists as a reaction to the unworkability of this software we are plugging into, and that the dream is still to see it all replaced, and then to see Smalltalk itself replaced by Frank or whatever the next distillation is of "what a computer really is".

My 2c... Obviously my recovery is not going well and idealism has crept back in ;)
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

kilon.alios
I agree that reimplementing things in Pharo is a good solution, if that means a cleaner and more flexible design that brings more clarity to anyone viewing the code. Definetly Pharo promotes those things or else I would have little reason to keep using it. Yes agree , my solution is a temporary solution, more like a sensible compromise, but a compromise non the less. 

Having ideals and dreams is really important. "Flying" once sounded ridiculous and it was that crazy idea that brought us the airplanes, took a long time but it eventually happened. 

After all there is room to implement things and there is room to take advantage existing technology , both have a lot of benefits to offer to the user.  



On Sun, Aug 24, 2014 at 11:59 PM, Sean P. DeNigris <[hidden email]> wrote:
kilon.alios wrote
> his dynabook is vaporware

The Dynabook is a vision of what computing could be, not a product, and so
can not be vaporware i.e. announced but not delivered. Looked at another
way, you are using a Dynabook, since Smalltalk was an iteration of an
attempt to implement of this vision.


kilon.alios wrote
> "Why fight them , when you can join them?"

The problem is that "them" = "a pile of code so complicated that it's beyond
the ability of a single human being to understand". When you make a choice
to use [ GNU/Linux | OS X | Windows ] + "suite of applications that are so
cool I can't live without", you end up with LOC equivalent to the entire
Library of Congress, impossible to understand, and requiring countless
context switches for all the languages and technologies involved. After
spending the time to dig into this mess in a few places where you want to
customize, you are lucky if you have any energy left over to create whatever
your vision originally was, for which the computer seemed like the perfect
tool.


kilon.alios wrote
> So now I am exploring the concept of how Pharo can control all these apps
> without me having to reimplement these apps in Pharo which is just an
> insane amount of work to code and maintain

Of course this is better than nothing ;) It's a great way to fast-forward to
the system of our dreams - make it work, then make it right. And at the same
time I think it's important to remember that Smalltalk exists as a reaction
to the unworkability of this software we are plugging into, and that the
dream is still to see it all replaced, and then to see Smalltalk itself
replaced by Frank or whatever the next distillation is of "what a computer
really is".

My 2c... Obviously my recovery is not going well and idealism has crept back
in ;)



-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/Can-Pharo-meet-all-your-computing-needs-tp4774250p4774468.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

S Krish
In reply to this post by Ichiseki

Run Pharo on top of Tiny Core linux total of about 50+ MB and you would have what you wish..

This can be more akin to Android on mobile if we all wish.. a complete ecosystem with multi VM pharo running on top of a stripped down modular linux.

Pharo will be the UI / kind of riding on top of a thin WM.


On Mon, Aug 25, 2014 at 2:04 AM, Ichiseki <[hidden email]> wrote:
This a very interesting topic.
Some time ago I was taking a look at a Tektronik flyer I found on the
Internet and seems that in those days, the concept of Smalltalk was that it
completely replaced the OS. Or perhaps is more accurate to say that
Smalltalk was the OS and the Development Environment.
I would love to see some kind of Pharo OS with applications inside Pharo.
The OS could be done using the Linux Kernel and some GNU tools. Now I bet
that for this project would be perfect to have a 64bit VM, isn't it?

I'm too was looking to read pdfs, read and manage email, surf the web, etc.

best

Ichiro




--
View this message in context: http://forum.world.st/Can-Pharo-meet-all-your-computing-needs-tp4774250p4774465.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Trygve
In reply to this post by WilfredHughes
I don't think the current Smalltalk architecture can meet all your computing needs because security isn't part of its core and because it is inconceivable that all the necessary programs can be developed within its boundaries.

Like several people I met at ESUG, my goal is the Dynabook and the Dynabook shall, by definition, meet all your needs. A Dynabook must be safe so that its owner is protected from hackers and other evildoers.   The Dynabook SW architecture must be open so that owners can safely install functionality ('apps')  that is available in a marketplace.  (The i-pad with its hardware and its marketplace for apps is at the back of my mind.)

I can only see one path from here to there. Start from e.g., Pharo and simplify it to create a Dynabook architecture with owner programming and with opening for safely adding functionality safely ad lib.  (I suppose this is an ST based OS?)

Any takers?
--Trygve


On 23.08.2014 17:04, Wilfred Hughes wrote:
Hi folks

I've been playing with Pharo recently, and really enjoying writing some programs in the Pharo environment.

As a result, I've been wondering if I can use Pharo the way I would use Emacs, as an environment for doing everything.

For example, can I use Pharo to:

* Send emails to this mailing list?
* Use IRC?
* Start Bash?
* Read the Pharo documentation (e.g. Pharo By Example)?

If these things do exist, how do I discover them? Is there a package manager I can use to find new tools I can use in Pharo?

Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

S Krish

" The Dynabook SW architecture must be open so that owners can safely install functionality ('apps')  that is available in a marketplace.  (The i-pad with its hardware and its marketplace for apps is at the back of my mind.)"


Can the intent be expanded a bit more. Is this an intent to have a Pharo / ST / Dynabook based marketplace or more extensive ?


On Mon, Aug 25, 2014 at 3:33 PM, Trygve Reenskaug <[hidden email]> wrote:
I don't think the current Smalltalk architecture can meet all your computing needs because security isn't part of its core and because it is inconceivable that all the necessary programs can be developed within its boundaries.

Like several people I met at ESUG, my goal is the Dynabook and the Dynabook shall, by definition, meet all your needs. A Dynabook must be safe so that its owner is protected from hackers and other evildoers.   The Dynabook SW architecture must be open so that owners can safely install functionality ('apps')  that is available in a marketplace.  (The i-pad with its hardware and its marketplace for apps is at the back of my mind.)

I can only see one path from here to there. Start from e.g., Pharo and simplify it to create a Dynabook architecture with owner programming and with opening for safely adding functionality safely ad lib.  (I suppose this is an ST based OS?)

Any takers?
--Trygve



On 23.08.2014 17:04, Wilfred Hughes wrote:
Hi folks

I've been playing with Pharo recently, and really enjoying writing some programs in the Pharo environment.

As a result, I've been wondering if I can use Pharo the way I would use Emacs, as an environment for doing everything.

For example, can I use Pharo to:

* Send emails to this mailing list?
* Use IRC?
* Start Bash?
* Read the Pharo documentation (e.g. Pharo By Example)?

If these things do exist, how do I discover them? Is there a package manager I can use to find new tools I can use in Pharo?


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

WilfredHughes
Sounds like the Dynabook goal rather overlaps with that of Lisp Machines. The idea of a single system that allows you to modify any part at runtime, inspect any part, or drop into a debugger anywhere is extremely powerful and wonderful to work with.

Emacs gets quite close to this, but... it's Emacs lisp. I've used worse languages, but elisp was not intended to be a general purpose application programming language. Smalltalk is, which is why Pharo excites me.

Once you start 'living' in a single environment, you customise it to meet your needs and can contribute the reusable parts to the wider community. This produces a virtuous circle of the tools getting better. A package manager that makes it easy to distribute your work is crucial in this.

Sounds like the first step for me is to start using the Pharo file browser and command shell and to see how it fits my workflow :)


On 25 August 2014 15:15, S Krish <[hidden email]> wrote:

" The Dynabook SW architecture must be open so that owners can safely install functionality ('apps')  that is available in a marketplace.  (The i-pad with its hardware and its marketplace for apps is at the back of my mind.)"


Can the intent be expanded a bit more. Is this an intent to have a Pharo / ST / Dynabook based marketplace or more extensive ?



On Mon, Aug 25, 2014 at 3:33 PM, Trygve Reenskaug <[hidden email]> wrote:
I don't think the current Smalltalk architecture can meet all your computing needs because security isn't part of its core and because it is inconceivable that all the necessary programs can be developed within its boundaries.

Like several people I met at ESUG, my goal is the Dynabook and the Dynabook shall, by definition, meet all your needs. A Dynabook must be safe so that its owner is protected from hackers and other evildoers.   The Dynabook SW architecture must be open so that owners can safely install functionality ('apps')  that is available in a marketplace.  (The i-pad with its hardware and its marketplace for apps is at the back of my mind.)

I can only see one path from here to there. Start from e.g., Pharo and simplify it to create a Dynabook architecture with owner programming and with opening for safely adding functionality safely ad lib.  (I suppose this is an ST based OS?)

Any takers?
--Trygve



On 23.08.2014 17:04, Wilfred Hughes wrote:
Hi folks

I've been playing with Pharo recently, and really enjoying writing some programs in the Pharo environment.

As a result, I've been wondering if I can use Pharo the way I would use Emacs, as an environment for doing everything.

For example, can I use Pharo to:

* Send emails to this mailing list?
* Use IRC?
* Start Bash?
* Read the Pharo documentation (e.g. Pharo By Example)?

If these things do exist, how do I discover them? Is there a package manager I can use to find new tools I can use in Pharo?



Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Offray
Hi Wilfred and welcome,

I have been lurking at the Smalltalk/Squeak community like from ten
years when I used Etoys, Bots Inc and Scratch to teach newbies an
introductory course on "informatics" (which has a part related with
programming) and after a while I got here at the Pharo community, where
I lurked here for a while but now, because of my PhD research, which is
related with mutual modification between communities and digital
artifacts, I try to explore Pharo as a medium for exploring some ideas
about that and I think it can't be done without a first hands on
experience on the environment and the actual code writing, so I'm trying
to become a more active participant, but I'm still a newbie. Anyway,
from newbie to newbie, welcome again.

About the dynabook and its vision I would recommend "Tracing the
Dynabook: A Study of Technocultural Transformations" by John W Maxwell
at [1]. In fact, on this book Maxwell claims that Smalltalk didn't loose
(in popularity and defining the common computer experience) against
another programming languages, it lost against the Operative System
paradigm, and its idea of having different small tools connected mainly
by pipes and files, mainly non-interactive, mainly binary and without
any unifying conceptual framework beyond files and pipes. I think he's
right.

[1] http://tkbr.ccsp.sfu.ca/dynabook/


Besides SqueakNOS you can see some ideas inspired in Smalltak and the
Dynabook vision in the EtoileOS[2]. The authors are not trying to repeat
the OS paradigm, but trying to rethink it from a Smalltalk perspective,
with practical considerations about bridging what we have now in C [3]
and the apps world [4] with what can be done/thought from a Dynabook
inspired vision.

[2] http://etoileos.com/
[3] http://etoileos.com/news/archive/2012/08/19/1308/
[4] http://etoileos.com/news/archive/2012/04/30/1825/

Regarding myself and my own approach to make this ideas viable in my
current context, specifically on what is concerned with creation of rich
documentation and something like a modest "Dynabooklet", I'm trying to
get the writing experience of Leo[5], which is an outliner that has the
property of making it's own tree structure available to make it
scriptable in Python (any node of the tree can contain python code which
can traverse and process the tree in particular ways) to something
similar in Smalltalk, with the advantage of an integrated and explorable
inmersive dynamic environment. My idea is to make and environment where
I can write my own PhD thesis[7] (at this moment I'm writing it with Leo
+ LaTeX with advances like this [8]), but also to teach some Data
Narratives[9] and Indie Web[10][11]. I'm trying to combine Python and
Smalltalk in modest ways or at least to create some cross-pollination of
ideas.

[5] http://leoeditor.com/
[6] http://smalltalkhub.com/#!/~Offray/Ubakye/
[7]
http://mutabit.com/offray/static/blog/output/posts/la-forma-en-que-escribo-para-el-doctorado.html
[8]
http://mutabit.com/deltas/repos.fossil/doctorado-offray/doc/tip/Tesis/ExamenCandidatura/Escrito2/luna-offray-ecologia-de-saberes-en-diseno.pdf
[9]
http://mutabit.com/offray/static/blog/output/posts/borrachos-bochinche-futbol.html
[10]
http://mutabit.com/offray/static/blog/output/posts/indie-science-indie-web-opengarage-science.html
[11] http://indiewebcamp.com/


So, I think Pharo can bootstrap the dynabook vision of and environment
for your computer needs and make it viable in different ways, even for a
single person or a small community if this is connected with the rest of
the environment and experiences on what we have now. My examples are
just humble approaches on my attempts to do that, but I hope that this
can show you a lot of interesting stuff that can be done as a novice or
as an expert with the help of the community and the persons here.

Cheers,

Offray

On 08/25/2014 06:33 PM, Wilfred Hughes wrote:

> Sounds like the Dynabook goal rather overlaps with that of Lisp Machines. The
> idea of a single system that allows you to modify any part at runtime, inspect
> any part, or drop into a debugger anywhere is extremely powerful and wonderful
> to work with.
>
> Emacs gets quite close to this, but... it's Emacs lisp. I've used worse
> languages, but elisp was not intended to be a general purpose application
> programming language. Smalltalk is, which is why Pharo excites me.
>
> Once you start 'living' in a single environment, you customise it to meet your
> needs and can contribute the reusable parts to the wider community. This
> produces a virtuous circle of the tools getting better. A package manager that
> makes it easy to distribute your work is crucial in this.
>
> Sounds like the first step for me is to start using the Pharo file browser and
> command shell and to see how it fits my workflow :)
>
>
> On 25 August 2014 15:15, S Krish <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>
>      " The Dynabook SW architecture must be open so that owners can safely
>      install functionality ('apps')  that is available in a marketplace. (The
>      i-pad with its hardware and its marketplace for apps is at the back of my
>      mind.)"
>
>
>      Can the intent be expanded a bit more. Is this an intent to have a Pharo /
>      ST / Dynabook based marketplace or more extensive ?
>
>
>
>      On Mon, Aug 25, 2014 at 3:33 PM, Trygve Reenskaug <[hidden email]
>      <mailto:[hidden email]>> wrote:
>
>          I don't think the current Smalltalk architecture can meet all your
>          computing needs because security isn't part of its core and because it
>          is inconceivable that all the necessary programs can be developed within
>          its boundaries.
>
>          Like several people I met at ESUG, my goal is the Dynabook and the
>          Dynabook shall, by definition, meet all your needs. A Dynabook must be
>          safe so that its owner is protected from hackers and other evildoers.
>          The Dynabook SW architecture must be open so that owners can safely
>          install functionality ('apps')  that is available in a marketplace. (The
>          i-pad with its hardware and its marketplace for apps is at the back of
>          my mind.)
>
>          I can only see one path from here to there. Start from e.g., Pharo and
>          simplify it to create a Dynabook architecture with owner programming and
>          with opening for safely adding functionality safely ad lib.  (I suppose
>          this is an ST based OS?)
>
>          Any takers?
>          --Trygve
>
>
>
>          On 23.08.2014 17:04, Wilfred Hughes wrote:
>>         Hi folks
>>
>>         I've been playing with Pharo recently, and really enjoying writing
>>         some programs in the Pharo environment.
>>
>>         As a result, I've been wondering if I can use Pharo the way I would
>>         use Emacs, as an environment for doing everything.
>>
>>         For example, can I use Pharo to:
>>
>>         * Send emails to this mailing list?
>>         * Use IRC?
>>         * Start Bash?
>>         * Read the Pharo documentation (e.g. Pharo By Example)?
>>
>>         If these things do exist, how do I discover them? Is there a package
>>         manager I can use to find new tools I can use in Pharo?
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Trygve
In reply to this post by S Krish
It's very vague; I'm thinking as I write.  My off-the-cuff answer: Start from  Alan's definition of object orientation: "... Thus its semantics are a bit like having thousands and thousands of computers all hooked together by a very fast network." The BOOK consists of its own objects as well as objects anywhere on the net. The remote objects may be written by anybody in any language, but they communicate with the BOOK according to a fixed message interaction contract. (Contrast with procedure call interfaces).

There will be many ways for linking users with producers. Google?

Alan Kay once said something like "an operating system is what the language designers omitted to include in their language". Smalltalk was built directly on top of the hardware microcode; it was its own operating system rather than an app. The BOOK  should be similar. More like iOS than an app.

This is fun
--Trygve
-------------------
I am using the term BOOK rather than Dynabook because Alan Kay has the moral copyright to the latter and he may not agree with what we are doing. 



On 25.08.2014 16:15, S Krish wrote:

" The Dynabook SW architecture must be open so that owners can safely install functionality ('apps')  that is available in a marketplace.  (The i-pad with its hardware and its marketplace for apps is at the back of my mind.)"


Can the intent be expanded a bit more. Is this an intent to have a Pharo / ST / Dynabook based marketplace or more extensive ?


On Mon, Aug 25, 2014 at 3:33 PM, Trygve Reenskaug <[hidden email]> wrote:
I don't think the current Smalltalk architecture can meet all your computing needs because security isn't part of its core and because it is inconceivable that all the necessary programs can be developed within its boundaries.

Like several people I met at ESUG, my goal is the Dynabook and the Dynabook shall, by definition, meet all your needs. A Dynabook must be safe so that its owner is protected from hackers and other evildoers.   The Dynabook SW architecture must be open so that owners can safely install functionality ('apps')  that is available in a marketplace.  (The i-pad with its hardware and its marketplace for apps is at the back of my mind.)

I can only see one path from here to there. Start from e.g., Pharo and simplify it to create a Dynabook architecture with owner programming and with opening for safely adding functionality safely ad lib.  (I suppose this is an ST based OS?)

Any takers?
--Trygve



On 23.08.2014 17:04, Wilfred Hughes wrote:
Hi folks

I've been playing with Pharo recently, and really enjoying writing some programs in the Pharo environment.

As a result, I've been wondering if I can use Pharo the way I would use Emacs, as an environment for doing everything.

For example, can I use Pharo to:

* Send emails to this mailing list?
* Use IRC?
* Start Bash?
* Read the Pharo documentation (e.g. Pharo By Example)?

If these things do exist, how do I discover them? Is there a package manager I can use to find new tools I can use in Pharo?



Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Sven Van Caekenberghe-2
In reply to this post by WilfredHughes

On 26 Aug 2014, at 01:33, Wilfred Hughes <[hidden email]> wrote:

> Sounds like the Dynabook goal rather overlaps with that of Lisp Machines. The idea of a single system that allows you to modify any part at runtime, inspect any part, or drop into a debugger anywhere is extremely powerful and wonderful to work with.

+10

That is, for me, one of the core points. Open source means nothing if you cannot read the code, do not understand it, cannot change it - easily. It is not just about being able to do it, but how big the barrier is. And it also includes the idea of documentation, tools, environment, live objects and being able to learn.

Sven

--
Sven Van Caekenberghe
http://stfx.eu
Smalltalk is the Red Pill


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Sean P. DeNigris
Administrator
In reply to this post by Trygve
Trygve Reenskaug wrote
Alan Kay once said something like "an operating system is what the
language designers omitted to include in their language".
That's a great one! Dan Ingalls put it this way in Design Principles Behind Smalltalk (http://www.cs.virginia.edu/~evans/cs655/readings/smalltalk.html):
    Operating System: An operating system is a collection of things that don't fit into a language. There shouldn't be one.
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Sean P. DeNigris
Administrator
In reply to this post by Sven Van Caekenberghe-2
Sven Van Caekenberghe-2 wrote
Open source means nothing if you cannot read the code, do not understand it, cannot change it - easily.
Yes!!! This is why just open sourcing a bad idea like an OS (see GNU/Linux) doesn't cut it. Even though theoretically you have access to the whole system, you can judge the practicality of doing so by looking at how few people actually do so. Compare that with Smalltalk, where it seems a rarity to find someone who /doesn't/ take advantage of modifying the core (granted Smalltalkers are somewhat self-selected). The system must be distilled down and unified until it is easily understandable and changeable by a single person. We'll know we're there when we have the equivalent functionality of "an OS + Standard Suite of Common Applications" in which it is commonplace for users to dig down and modify any level.
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

kilon.alios
Personally I think the direction Moose is going is the right one, with visualising code for understanding its overall structure. I do think however that a system can help a user understand is an AI system, not in the strict sense of the word but a system that can understand user needs and act accordingly. Something like the Star Trek computer, where you can talk to a computer and reply back. Coding was great so far but it has become too complicated for mere humans to manage. So I think if Pharo is the future then we need to focus more and invest more on intelligent software, not software that is build in intelligent way but rather a software that can evolve and react to user's needs. This wont be easy or a short term goal. 


On Tue, Aug 26, 2014 at 3:26 PM, Sean P. DeNigris <[hidden email]> wrote:
Sven Van Caekenberghe-2 wrote
> Open source means nothing if you cannot read the code, do not understand
> it, cannot change it - easily.

Yes!!! This is why just open sourcing a bad idea like an OS (see GNU/Linux)
doesn't cut it. Even though theoretically you have access to the whole
system, you can judge the practicality of doing so by looking at how few
people actually do so. Compare that with Smalltalk, where it seems a rarity
to find someone who /doesn't/ take advantage of modifying the core (granted
Smalltalkers are somewhat self-selected). The system must be distilled down
and unified until it is easily understandable and changeable by a single
person. We'll know we're there when we have the equivalent functionality of
"an OS + Standard Suite of Common Applications" in which it is commonplace
for users to dig down and modify any level.



-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/Can-Pharo-meet-all-your-computing-needs-tp4774250p4774868.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: Can Pharo meet all your computing needs?

Trygve
In reply to this post by Sean P. DeNigris
Yes, yes, yes.
BTW: Readable code is the goal of DCI.

On 26.08.2014 14:26, Sean P. DeNigris wrote:
Sven Van Caekenberghe-2 wrote
Open source means nothing if you cannot read the code, do not understand
it, cannot change it - easily.
Yes!!! This is why just open sourcing a bad idea like an OS (see GNU/Linux)
doesn't cut it. Even though theoretically you have access to the whole
system, you can judge the practicality of doing so by looking at how few
people actually do so. Compare that with Smalltalk, where it seems a rarity
to find someone who /doesn't/ take advantage of modifying the core (granted
Smalltalkers are somewhat self-selected). The system must be distilled down
and unified until it is easily understandable and changeable by a single
person. We'll know we're there when we have the equivalent functionality of
"an OS + Standard Suite of Common Applications" in which it is commonplace
for users to dig down and modify any level.



-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/Can-Pharo-meet-all-your-computing-needs-tp4774250p4774868.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.




--

Trygve Reenskaug      mailto: [hidden email]
Morgedalsvn. 5A       http://folk.uio.no/trygver/
N-0378 Oslo             http://fullOO.info
Norway                     Tel: (+47) 22 49 57 27
12