Hi Offray, Yes, I definitely agree with you that Lua does not have the nice development environment of Pharo (what other language does?), and is very bare-bones, as it was originally intended for embedded applications. I've gone through nearly all of the online version of the Pharo MOOC now, and the ease of building a web app with Pharo+Seaside is /amazing/. (That's reason enough to adopt Pharo!) I'm now looking at Spec and how to work with that to make GUI apps. I can't do web apps in Lua, nor is there a GUI in Lua. For that matter, with Lua there is no interaction with the OS, no sockets, and very minimal file system interaction (that's actually built into Lua -- it doesn't even know what a directory is). All of these capabilities can be had in Lua, but they must be provided by external libraries -- even the ability to interact via a terminal command line is typically done via a small C app that wraps a Lua "state". Lua is tiny. Tiny, but powerful. So I see that as an advantage, and a compliment to Pharo. Seaside may be an external library to Pharo, but much of "the rest" is built-in, and comes with a nice OS/IDE to wrap it all up and keep things together. Did not Smalltalk-80 invent the concept of a container, which is becoming all the rage in IT today? Yet another first for ST..? So I guess that's my beginner impression of Pharo: a great environment that lives in a container. (I'm learning how to implement containers and implement /in/ containers now, too.) How easy is it to cross that boundary and interact with the rest of the world? Maybe another way Lua and Pharo are dissimilar? Example: I automate hardware... Can I use Pharo to interact with instrumentation over USB? -Ted Offray Vladimir Luna Cárdenas-2 wrote
Hi t,
Yes, I know that Lua support OOP, with several implementations and using metatables. I have not looked in detail. But the idea of shared similarities while being at opposite extremes of the programming spectrum/experience is more related with both sharing minimalist concepts applied everywhere (objects and messages for Pharo, tables and functions for Lua), but one provided a full IDE/GUI and being tied with a programming paradigm, which makes it great for agile prototyping, while the other offers just the bare minimum and you arm your puzzle from there regarding tools, paradigms, which makes it great for embedding.
Cheers,
Offray
-- Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html