[LRUG] What will the post-Rails contraction be ?

Stephen Masters stephen.masters at me.com
Wed Feb 20 03:15:55 PST 2013


Yep … creating a nice linear story is a great device for a presentation, but there's a risk of over-simplifying things and contorting reality a little bit too much. I did actually put the OO purist languages such as Smalltalk and Eiffel into that sequence initially, but I went and took them out because they were messing with its linear nature. Truth is, the evolution of programming languages isn't linear. I reckon it's mostly a case of various academic languages being created to study very specific concepts, and later, the ideas from these being sucked into more mainstream languages.

Something I think is worth thinking about in terms of the next big thing is the declarative rules languages which the world of AI was built on. To a large extent, functional languages were the beginnings of AI research, but later came languages such as Prolog, and rules engines / production systems, which were even better suited to the task. Functional languages are currently in vogue, and I'm pretty sure this is because they are very well suited to distributed processing, which is essential to building huge search indexes, and analysing massive volumes of data.

However, one of the key aims of much of this analysis is machine learning and natural language processing. So I'm curious whether it's reasonable to assume that some of the concepts from expert systems and languages such as Prolog might start showing themselves as extensions to the more mainstream languages.

Of course in the interest of full disclosure, I should point out that my currently specialty is building web services based on rules engines. Being in that world, I'm seeing a growing interest in the application of rules engines to business problems. And I'm really hoping that the interest will continue to grow, thereby ensuring a profitable career for my good self. :)

I'd be interested to hear whether there any other areas of computing that anyone can think of which have been considered 'academic', but actually might have useful applications in resolving today's issues?

Steve


On 20 Feb 2013, at 09:04, Tom Stuart <tom at tomstuart.co.uk> wrote:

> On 19 February 2013 21:22, Stephen Masters <stephen.masters at me.com> wrote:
> 
>> If he had stayed away from Rails, and stuck with just Ruby, then it might have made more sense. i.e.
>> 
>> Assembly
>>  -> FORTRAN
>>    -> Lisp (Functional Programming)
>>      -> Algol 68 / C (Structured Programming)
>>        -> C++ (make C safer by merging Structured programming with OO)
>>          -> Java (make C++ safer by enforcing OO (mostly), and removing pointers)
>>            -> Ruby (make dev easier/faster by removing the safety harness of static typing)
>>              -> Clojure / Scala / F# (maybe static typing wasn't so bad, but we'll claim it's because we want to do multi-core more efficiently)
>> 
> 
> Even then, this would only be a version of history. You could paint a
> very different picture and draw very different conclusions if only you
> replaced C++ with Smalltalk, for example.

> I agree strongly that this is purely a talk about fashions in
> programming. This is something Gary's not making clear enough, and
> he's also not making it clear enough that Rails has a 'culture of
> brokenness' almost entirely for cultural reasons rather than as a
> logical conclusion of aspects of the language or framework. There's
> nothing in Java which logically leads to service-oriented
> architectures making use of inversion of control containers, and
> there's nothing in Ruby which logically leads to tightly-integrated
> systems.
> 
> Which is not to say that there are not *aspects* of both languages
> which might set developers on a path of thinking *toward* these
> logical conclusions. I just think it would be a stretch to say that
> these aspects outweigh characteristics of the culture, and that Gary
> doesn't even try to establish that argument.




More information about the Chat mailing list