realbasic-nug
[Top] [All Lists]

Re: Dealing with multi-processor or multi-core

To: "REALbasic NUG" <realbasic-nug at lists dot realsoftware dot com>
Subject: Re: Dealing with multi-processor or multi-core
From: dda <headspin at gmail dot com>
Date: Sun, 1 Jun 2008 12:03:13 +0800
Authentication-results: mx.google.com; spf=pass (google.com: domain of realbasic-nug-bounces at lists dot realsoftware dot com designates 66.116.103.65 as permitted sender) smtp dot mail=realbasic-nug-bounces at lists dot realsoftware dot com
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug at lists dot realsoftware dot com
References: <p06240802c4657bd7c318 at 62 dot 161 dot 36 dot 122> <41B4C50C-AB85-4975-B2AE-C6A4DD49D787 at inspiringapps dot com>
There is one language -- Erlang -- that doesn't have these
limitations, as it shares nothing between processes. The user gets
"free" concurrency and multi-tasking. It is not an easy languages, and
has its own limitations -- GUI and strings suck -- and it is not OOP,
so wrapping your head around that unwieldy beast is quite a thing.

I wrote a year ago an experimental Erlang version of an XML parsing
engine specific to the iTunes.xml file. I got a 700% speedup, give or
take, over the pure RB. But integrating that thing into a GUI app
would be quite a thing, and you'd have to add the Erlang framework
too. Running that code on a large file -- test file was 50,000
records, 35MB -- makes CPU usage max out for a few seconds on one
core, and keeps the other one busy.

There's no language that can give you everything for free. I love both
RB and Erlang, and rail at them frequently because of their own
weaknesses. But waving a big flag saying "Implement XXXX or else!" is
kinda lame, especially when XXXX is something like concurrency...

-- 
dda

On Fri, May 30, 2008 at 10:18 PM, Joe Strout <joe at inspiringapps dot com> 
wrote:
>> On May 30, 2008, at 3:40 AM, Jean-Luc Arnaud wrote:
>> Would I be obliged to switch to C++ or other, in order to get high
>> performances ?

> No, you would have the same limitations in any language; it's just
> that those other languages would cheerfully let you shoot yourself in
> the foot.
_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives:
<http://support.realsoftware.com/listarchives/lists.html>


<Prev in Thread] Current Thread [Next in Thread>