On Mon, Dec 20, 2010 at 3:54 PM, Julian Leviston <[email protected]> wrote: > > On 21/12/2010, at 4:51 AM, Steve Wart wrote: > >> So is there anything interesting from a FONC perspective in mobile >> devices? It may be a coincidence that Apple's success with the iPhone >> is to a large extent due to a Smalltalk-derived C dialect, but most >> people who know Smalltalk would agree that it's more like C than it is >> Smalltalk. Apple's certainly made it clear that they've got little >> appetite for dynamic languages on iOS (other than web apps), but the >> reality is that keyboard-less mobile devices are not suitable for >> programming activities at all, from any manufacturer. > > I wouldn't really agree with this. Have you used Objective-C? I code in it > daily, and Apple's frameworks and particularly the design patterns baked > inherently into those frameworks make it so Smalltalk-like that I'm rather > surprised you would say something like this. It *is* a dynamic language > (assuming I know what you mean by dynamic here) - in other words, it uses > live realtime message-sending.
I used Objective-C pretty much every day for the past 2 years, but for the past 6 months I've been coding in Smalltalk (good old VisualWorks/Envy and GemStone) again. Objective-C has a static compiler and an interesting runtime (with Smalltalk-like message sends), but the compiler and the runtime are very distantly separated in time. You use GDB to debug your code. It's not a dynamic language. Objective-C is a good language for what it is. I don't think it's a replacement for C++ or Smalltalk, but it obviously has a strong niche in iOS, and Apple's done as an amazing job of designing their APIs as they have in designing the consumer-facing bits. I think the language has played a big part in the success of both NextStep and the iPhone and it's clearly suitable for building complex systems. > I'm not actually sure how relevant something that doesn't "join in the > conversation" rather than try to reinvent EVERYTHING is, though... what I > mean by that, is Apple have got very very good at layering their architecture > with replaceable bits... I think this approach is infinitely useful, because > it means if any single piece needs fixing, replacing or modification, then it > can be re-tooled relatively easily and quickly. It's proper > objected-orientedism. (For want of a better word). I agree. I think that FONC shouldn't be tied down to an implementation, but ultimately we have to deploy to some hardware. I have been very focused on iOS and have struggled with geting Squeak and Croquet to expose the low-level bits in a productive way. And in the end I decided if I'm going to do iOS programming, there's no point in fighting the platform, and so I do it in Objective C where I can and C++ where I must. In fact, I don't really care about platform independence. At all. But you must know the edit, compile, download loop is not the most efficient way to be doing things. We do it because the platform demands it, and it's the best way to deliver quality to the end-user. The point of Smalltalk to me is that the programmer is the end-user, and very few of the dynamic languages I've seen really live up to that standard. [other interesting stuff snipped] > > The fact that FONC have built O-META as a base artefact brings me immense > excitement in relation to this, because O-META couldn't be a more functional > implementable piece in the puzzle to the existing context of coding... the > potential here is huge... being able to plug in various pieces of code in > various languages is an amazing idea. (Assuming I'm properly interpreting > what its potential is, though). I'm excited about the potential too. I was hoping to build a NodeBox-like environment in Squeak. I struggled getting an OMeta parser to work in Squeak and getting the OpenGL context working (thanks Croquet) but it wasn't quite what I had hoped for. Now I'm thinking maybe it's better to look at WebGL and OMeta, but my heart's not really in it. I'm probably too old and unlettered to become a mathematician, but I love geometry. All I really want to do is instill that in my kids and give them the tools to explore on their own, without having to be consumers all the time. Unfortunately the tools that can expose the really amazing power of modern computing hardware are still too complicated for us to share, and the productive tools I'm used to can't get down to the level I want, at least not yet. It seems there is so much scaffolding we never actually get around to doing the actual building. Why can't the scaffolding be made of the same stuff? OMeta showed you can do that with compilers, Smalltalk showed you can do it with, well an OS. The stuff I'm trying to do is pretty simple in comparison, but I'm still not sure I'm asking the right questions. Cheers, Steve > > Julian. > _______________________________________________ > fonc mailing list > [email protected] > http://vpri.org/mailman/listinfo/fonc > _______________________________________________ fonc mailing list [email protected] http://vpri.org/mailman/listinfo/fonc
