Does this seem nice to you?

After years of recoiling at the sight of code like this, am I supposed now to embrace it in a spirit of reconciliation?

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            dynamic blah = GetTheBlah();
            Console.WriteLine(blah);
        }

        private static dynamic GetTheBlah()
        {
            if (DateTime.Now.Millisecond % 3 == 0)
                return 0;
            else
                return "hello world!";
        }
    }
}

need to wash my hands.

About these ads
  • Trackback are closed
  • Comments (7)
  1. Funny you should mention it. The dynamic keyword seems like the new Variant. Ah well… much like JavaScript, you don’t have to use everything!

  2. No, you shouldn’t embrace that code. Nor would a hard core JavaScript/Ruby/Python/WhatEverDynamicLanguageYouWantToName developer embrace that. You can shoot yourself in the foot in any language, static or dynamic, so don’t blame bad code on what a language allows.

  3. That might be an abuse of the dynamic keyword :)

    • Alexey Baskakov
    • April 1st, 2009

    Well-typed programs can’t be blamed. A paper by Philip Wadler.

  4. I’d like to have a way of yielding a compiler warning if there’s a ‘dynamic’ thing in the app! :)

    • Dom
    • April 2nd, 2009

    You can convert that to csh and make it better :-)

  5. Right! And the point of static typing is to prevent what kinds of abuse?

Comments are closed.
Follow

Get every new post delivered to your Inbox.

%d bloggers like this: