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

Re: Harlequin 1.2 still available?



Maury Markowitz wrote in message
<61N_4.21909$dK2.597373@news20.bellglobal.com>...
>"Scott McKay" <swm@mediaone.net> wrote in message
>Rhv_4.37850$Ft1.1955916@typhoon.ne.mediaone.net">news:Rhv_4.37850$Ft1.1955916@typhoon.ne.mediaone.net...
>
>> During active development, you can set the compilation mode
>> to a "looser" mode in which, when you do Project->Build, the
>> compiler figures out which things have changes and compiles
>> just those things and any downstream things that might be
>> affected.  This can greatly improve the compilation time for
>> Project->Build.
>
> Forgive the stupid question: isn't this how all make systems work?


'make' systems generally have a compilation granularity of a single
file.  Dylan's unit of compilation, by the definition in the language, is
an entire library.  This allows, e.g., optimizations across an entire
library rather than within a single file in the library.  Thus, the default
compilation mode is a library, that is, all the files in the libary.  In
"loose" mode, the compiler tries to do less work, but also does less
optimization.

>> and the do Project->Start.  Play with your project for a while,
>> then use the Application->Pause to pause it.  You can now go
>> into the editor, modify a method, and recompile just that one
>> method.  If you are using Emacs-mode, just type control-shift-C
>> to do this.  The recompiled method will get compiled and uploaded
>> into the running application, and the application will run with the
>> new method.
>
>  Ahhh, Link-n-Go, the mysterious vanishing feature.  Cool, I didn't know
>the Dylan systems offered this.
>
>>  - The code generated for loose mode compilation is a little
>>    slower than tight mode compilation
>
>  That seems odd - isn't this just a message to the runtime to move some
>pointers?  Why is the generated code different?


In loose mode, the compiler can do fewer optimizations, because
the type system is treated a bit more loosely.

>> Even with the above provisos, I believe you will find that being
>> able to do interactive compilation will increase your productivity
>> radically.
>
>  For sure, I've been asking for this one in Obj-C for a while now.  Not
>trivial to implement, but doable, as Dylan demonstrates.


Definitely not trivial.

Here's a feature I really like in Fun-O Dylan.  Build a project, then
open one of the files in the editor.  Click right on the name of a function
of a class, and select something like "Edit Methods" for a function, or
"Edit Superclasses" for a class, and watch what happens.






References: