speed<br><br>
<div class="gmail_quote">On Mon, Jun 30, 2008 at 4:10 PM, Igor Stasenko <<a href="mailto:siguctua@gmail.com">siguctua@gmail.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">2008/6/30 Peter William Lount <<a href="mailto:peter@smalltalk.org">peter@smalltalk.org</a>>:<br>
<div>
<div></div>
<div class="Wj3C7c">> Hi Frank,<br>><br>> Your project seems interesting. I'd like to know more. Any links? Papers?<br>><br>> I need to learn a lot of ick stuff really fast and unfortunately that stuff<br>
> is really icky, yup the ick is a number of very large monster C/C++ systems<br>> with tons of core assembly thrown in for extra fun. Some custom<br>> visualizations like I've done for learning monster Smalltalk systems will<br>
> save a lot of time.<br>><br>> I'm into accelerated learning of detailed systems using the visual cortex of<br>> our brains since the human visual system has massive bandwidth that word<br>> based and auditory thought channels lack, although I suppose one could<br>
> convert large systems into a symphony. Anyway visual representations of<br>> large systems can help in quickly learning about how they are constructed<br>> and identify where one needs to focus extra attention.<br>
><br>> On a recent large Smalltalk project the visual map required about eight feet<br>> by three feet just to map out the connections between the larger object<br>> assemblies. It helped provide an overview of the system. Programmers who'd<br>
> been working with the system for years had no idea that it was shaped that<br>> way.<br>><br>> There is a video from a few years back on Channel 9 over at ick, Microsoft,<br>> where they tell of a very large map of their 5,000 + DLLs for XP. They built<br>
> it by reading the raw DLLs and determining the links between them all. They<br>> consider their OS a fractured system living in these DLLs which we know as<br>> DLL Hell. It's a Hell for them too! Ah, the fun of eating your own<br>
> technology. They found redundant code (sometimes 12+ copies of the same<br>> function which leads to all sorts of fun fixing bugs and providing security<br>> patches) and were better able to reduce their icky factor a little making XP<br>
> more stable and less tangled that their prior systems.<br>><br>> Aside from the visualization aspect I'd like to computer the System<br>> Brittleness Factor (LSBF) for each system to see how rigid or flexible the<br>
> code base is. This helps identify where it can be improved and where code<br>> can be shrunk by increasing flexibility through merging of methods/classes<br>> that really are similar. As we know C/C++ code is more "rigid" due to it's<br>
> use of typed variables which very strictly limits the object flow paths<br>> through the program. Even with C++ Templates which enables a measure of<br>> polymorphism for C++ programs the rigidity can be measured. Typically the<br>
> code needed for a system expands when typed variables are added. This is a<br>> problem for many reasons including comprehension due to the increased brain<br>> bandwidth required to simply read the ick.<br>><br>
> Also for the other reasons I stated in the earlier emails: "All your<br>> languages and systems belong to us [Smalltalk Style Systems]." The sCurge of<br>> C based systems has been with us way to long, it's time to take back the<br>
> night and the day. ;-) Gotta have fun...<br>><br>> Check out the awesome work of LLVM. <a href="http://www.llvm.org/" target="_blank">http://www.LLVM.org</a>. Runtime Dynamic<br>> Recompiled on the Fly C based systems on the way and in part financed by<br>
> Apple. Liberation from GCC is on the horizon. Imagine a Squeak that can<br>> recompile it's VM on the fly and then "hop" over to the new one dropping the<br>> old version from memory!!! We do this all the time in Smalltalk, it'll be<br>
> nice for C to finally catch up after four decades! It's also nice to see a<br>> vendor like Apple attempting to bring this capability to their C based<br>> operating systems and applications technologies.<br>
><br><br></div></div>If you able to compile things at run time, then why compiling C at all?<br>See Exupery & friends.<br>
<div>
<div></div>
<div class="Wj3C7c"><br>> All the best,<br>><br>> Peter<br>><br>> [ | peter at smalltalk dot org ]<br>><br>> ps. Ick is a technical term referring to the ick factor of a system. Ick is<br>> the opposite of elegant, beauty, simplicity. I work to identify ick and<br>
> remove it from systems when possible or simply to fix the ick so that it<br>> doesn't stop a system from working.<br>><br>><br><br><br><br></div></div><font color="#888888">--<br>Best regards,<br>Igor Stasenko AKA sig.<br>
<br></font></blockquote></div><br><br clear="all"><br>-- <br>David Zmick<br>/dz0004455\<br><a href="http://dz0004455.googlepages.com">http://dz0004455.googlepages.com</a><br><a href="http://dz0004455.blogspot.com">http://dz0004455.blogspot.com</a>