chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] chicken and stalin


From: Pierre-Alexandre Fournier
Subject: Re: [Chicken-users] chicken and stalin
Date: Tue, 5 Jun 2007 20:55:30 -0400

Hi Bryan,

if you're looking for performance you might consider gambit:
http://www.iro.umontreal.ca/~gambit/

It compiles to C, has a great debugger, and you should find people on
the gambit mailing list to help you if you have questions.

You might want to take a look at termite too:
"Termite is an Erlang-like distributed programming system written in Scheme."
http://toute.ca/

But if you're looking for lots of libraries your should probably stick
with chicken.

Cheers,

--
Pierre-Alexandre



2007/6/5, bryan rasmussen <address@hidden>:
Well, I suppose it is a general question. Basically I have a big
application made a few years ago, we (meaning myself and some
partners) want to start it up again and add capabilities to it, this
application was at the point in it where I know what I will want to do
will require C because will need to write some low level stuff that
should be optimized  - I don't want to write in C (mainly because as a
C programmer I am at best at maintenance level) so a language I find
enjoyable that compiles to C is good, I decided to pick Chicken
because while I am a Scheme newbie I often find the code relatively
easy to understand and elegant (I've gone through SICP and have a good
bit of functional programming). That Stalin was faster was interesting
because some of the things I can see writing is for example providing
drivers for Erlang in C, well the reason one writes a driver for
Erlang in C (for example, via dryverl http://dryverl.objectweb.org/ )
is because it is a situation where performance and speed is critical

Of course the things Brandon has said has made me reconsider, because
the reason why I would consider doing anything with Stalin (speed)
will not be trumped by the need I have above speed, being development
time. That is to say the need for speed is a possible vague future
optimization, I realize premature optimization is evil but I figure
premature discussion of optimization can only be, at worst, slightly
naughty.



Cheers,
Bryan
On 6/5/07, Zbigniew <address@hidden> wrote:
> Bryan,
>
> I'd like to know from what perspective you are approaching this.  Do
> you already have code written for Stalin that you need to interface to
> Chicken?  Or are you interested in the optimizations Stalin does
> purely as a research problem and would like to see if they are
> applicable to Chicken?  Do you have a "need for speed" in a particular
> application you've written or is this just a general question?
>
> The reason I ask is that if you're interested in this from a practical
> standpoint of "speed up my application", and are looking at Stalin
> primarily because "it's fast",  then I would attack this from a
> different angle.  Write your application in Chicken, profile it, then
> take the bottleneck or critical paths and 1) rewrite the algorithm; 2)
> disable safe mode, interrupts, etc.; 3) rewrite in C; 4) use the
> crunch egg; and so on.    It all depends on the goals of your
> application; pure speed is the goal only in select domains. Oh, and
> premature optimization is the root of all evil. :)
>
> If you're looking at this more from a theoretical angle, or just for
> fun, then that's a different matter, and other people have mentioned
> some possibilities.  Something interesting may come of it.
>
>
> On 6/4/07, bryan rasmussen <address@hidden> wrote:
> >  I guess (for me) what I was meaning was what are different ways that
> > people might be using Stalin for doing parts of their C compilation,
> > and how Chicken works with what comes out of Stalin compilation as
> > first part. Second part, analysis of Chicken Scheme code to see what
> > would be more optimized in Stalin.
>


_______________________________________________
Chicken-users mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/chicken-users





reply via email to

[Prev in Thread] Current Thread [Next in Thread]