Dino's Blog

.NET Stuff

  • Dino's Blog

    IronPython, MS SQL, and PEP 249

    • 6 Comments
    Over the past week and a half I've spent a little bit of time getting Django 0.96.1 running on IronPython. The 1st step in doing this was getting a database provider that would run on .NET that would work with Django. For DB backends Django basically...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 1

    • 8 Comments
    Well it’s been a while since I’ve blogged… There’ve been a few distractions, starting with Beta 1, then vacation, and now things are back to normal. So it seems reasonable to blog about something that we’ve just shipped in Whidbey Beta 1: The cooperative...
  • Dino's Blog

    Fiber mode is gone...

    • 3 Comments
    Well, now that our RTM and RC-esque builds are starting to make it out into the wild it seems like a good time to discuss a feature we had to make go away... That feature which most readers of my blog are probably now familiar with is fiber mode. So...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 9

    • 4 Comments
    The managed Fiber class exists in its own directory in the SDK sample appropriately called Fiber. The Fiber class is designed to be vaguely similar to the managed Thread class. For example, like the Thread has ThreadState the fiber has FiberStates. The...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 11

    • 0 Comments
    Last week we went over the Abort and RudeAbort APIs. This week we’ll go over Fiber.Exit. This API provides a way for you to terminate a running fiber, and demonstrates a use of the unmanaged ICLRTask::ExitTask API. The ExitTask API can only be called...
  • Dino's Blog

    .NET Trivia

    • 5 Comments
    Here’s a fun piece of .NET trivia involving thread aborts and exception handling. What does the following code do? And why does it do it? using System; using System.Threading; class TATest { public static void Main (string ...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 10

    • 0 Comments
    In this article we’re going to look at the implementation of Abort and RudeAbort. In the last article I mentioned that a typical host wouldn’t need to expose these to managed code. Why is that? If you have a fiber mode scheduler typically Thread.Abort...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 6

    • 0 Comments
    The synchronization primitives are handled off to the runtime by the IHostSyncManager interface. We’ve already provided this to the runtime through our GetHostManager callback on IHostControl. Our IHostSyncManager is implemented on our IHostTaskManager...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 5

    • 1 Comments
    Last time we successfully created a task and started it running. That’s an accomplishment, but there are a couple of details we should get out of the way before we start to dive deeper into the fiber mode implementation. Those are all on IHostTask and...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 2

    • 1 Comments
    In the last blog entry I went over how we start the runtime. Once it was loaded we were running managed code, but I glossed over the managers that were present and participating in running the system. Today we start off with CHostControl::GetHostManager...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 8

    • 0 Comments
    It seems like a good time to take a breather and look at what we have going on so far. First, we’ve started the runtime. We’ve handed our IHostControl off to the runtime. The runtime has called back to our IHostControl and gotten a couple of managers...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 7

    • 0 Comments
    At this point we’ve covered nearly all the major components of the unmanaged host. The one remaining detail is the interface that’s used between the managed fiber mode implementation and the unmanaged host. This is all implemented in callbacks.cpp. We...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 3

    • 0 Comments
    When I last left off we went over the host control. The host control hands off our task and synchronization managers. Now it’s time to take a look at the two host-implemented managers, starting with the task manager. I’m going to skip over the minor details...
  • Dino's Blog

    Cooperative Fiber Mode Sample - Day 4

    • 0 Comments
    Last time we left off with the CLR calling into the host to create a task. So far everything’s been very simple. For each interface we’ve only needed to implement a couple of methods to get the bulk of the work done. While I’ve certainly left out a couple...
  • Dino's Blog

    Testing Fiber Mode

    • 0 Comments
    Testing Fiber Mode Fiber mode is one of the interesting new features we’ve done in hosting. Fiber support in .NET comes up as a common question too. I’d like to give an overview of what we’ve done to test fiber mode to ensure that you’ll get a good...
  • Dino's Blog

    On Performance

    • 2 Comments
    Ahh, performance… It’s so much fun! It’s easy to measure and as you work on it you can see immediate benefits (or not!). I personally enjoy getting to spend time looking at interesting performance issues and I’ll use this as a time to plug IronPython...
  • Dino's Blog

    A Simple DLR Binder

    • 1 Comments
    A lot of people find it a little confusing to write their first binder to consume dynamic objects running on the DLR. It’s not actually super simple but it’s not too hard either. To shine some light on this I thought I’d post a very simple binder that...
  • Dino's Blog

    Inaugural Blog

    • 2 Comments
    Welcome to my blog. Yes, that’s right; you’re reading YAIB (Yet another Inaugural Blog). So, who am I, and why should you care? My name is Robert “Dino” Viehland (as in everyone calls me Dino, except for people who knew me in high school or before...
  • Dino's Blog

    New opportunities...

    • 0 Comments
    After a little over 4 years it’s time for me to go and explore new opportunities… It's awesome to see Whidbey out there now and I'm sure the work we did to improve the reliability of the CLR and embed it in SQL Server will pay off for our customers. But...
  • Dino's Blog

    IronPython 2.6 Released!

    • 1 Comments
    I've very happy to announced that we've officially released IronPython 2.6! This is a great release which brings us up to date with the stable CPython 2.x branch, greatly improves startup time performance, continues to improve our support for deep .NET...
  • Dino's Blog

    World's Worst Paint Program

    • 0 Comments
    I've uploaded the World's Worst Paint Program, as seen in my PDC talk, to IronPython's CodePlex site: http://ironpython.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=28125#DownloadId=93331 This is built using Visual Studio 2010 Beta 2 and...
  • Dino's Blog

    Two IronPython releases in 1 week

    • 0 Comments
    This was a good week for IronPython - we've released not one but two new versions! The first release was IronPython 2.0.2 which just includes bug fixes for issues which have been particularly irritating to our users. This is a very minor release and...
  • Dino's Blog

    Announcing Python Tools for Visual Studio 1.0

    • 3 Comments
    As you can see from Soma's blog on Monday we released Python Tools for Visual Studio 1.0 . Of course I'm excited about this release as it's been the 1st stable release I've put since IronPython 2.6 (and the first blog too!). This release of PTVS focuses...
Page 1 of 1 (23 items)