|
David MacDermot wrote: 3 carrots - chopped very small
4 stalks Celery - chopped ..and my mind went "unions! unions!!" Those three are called "mirepoix" and is an often used flavor base.
Guess I'll be trying this one twice; once with and once without unions.
Bastard Programmer from Hell
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
|
|
|
|
|
You'd have to talk to my wife. She's an extremely slow cooker.
Of course, she is extremely slow at every thing she does. She has two speeds, slow and full stop.
Her dishes are wonderful.
|
|
|
|
|
Slow Eddie wrote: Her dishes are wonderful. Picture?
of the dish, not the wife.
Bastard Programmer from Hell
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
|
|
|
|
|
|
Microsoft <whistling innocently> __not doing anything here__
<pulls rug out from underneath you>
Microsoft: Walk much, fella!?! Ho ho, ha ha. < walks away >
|
|
|
|
|
|
Given the rich/complete metadata and run-time analysis (JIT) of managed code, I'm surprised .NET and/or Java do not have a way to create true transactions in the engine.
It should be relatively easy to considering how much information is available in terms of how the data is laid out in memory - unless I'm missing something. By *relatively* I mean compared to say, trying to implement such a thing in unmanaged code.
It strikes me as a missed opportunity, as I know several areas where it could potentially come in handy, maybe more so with parallel operations as well.
But again, maybe I'm missing something. Maybe it's more difficult than I imagine.
I'd try to do it myself but,
A) It's a lot of man-years of effort
B) It requires changes to the CLI or JVM - and my code will never "go viral" enough to be adopted into major engines.
C) I've never done it before. It's a bit ambitious for a first attempt at implementing ACID transactions.
Real programmers use butterflies
|
|
|
|
|
Moving back-end wheels to the front.
"Before entering on an understanding, I have meditated for a long time, and have foreseen what might happen. It is not genius which reveals to me suddenly, secretly, what I have to say or to do in a circumstance unexpected by other people; it is reflection, it is meditation." - Napoleon I
|
|
|
|
|
Not everything is about databases. Not every piece of software is a triple tier application designed for some corporate entity that wants to do b2b or ecommerce transactions.
There are plenty of good reasons to want to be able to do this in memory.
Transactional memory - Wikipedia[^]
Most of them having to do with concurrent software.
It's arguable that maybe full ACID isn't needed in such cases, but once you've gone that far, full ACID is a stone's throw from it.
Real programmers use butterflies
|
|
|
|
|
He's not at Microsoft Research anymore but way back around 2010 Dana Groff led a team that designed the experimental STM.NET[^]. I know nothing about it at all. For some reason the whole project was completely dropped.
|
|
|
|
|
Dropped?! Where I worked, projects (if initiated at a sufficiently senior level) were never dropped. They were only repositioned.
|
|
|
|
|
Greg,
Greg Utas wrote: They were only repositioned. Yeeaah, we're going to need to go ahead and move you down to storage room B[^].
|
|
|
|
|
Interesting.
Real programmers use butterflies
|
|
|
|
|
I found the team blog in the archive[^] if you are interested in reading the old material. I did some digging around and it was the Program Manager of the CLR team at the time (Joe Duffy) that pushed to get it dropped.
|
|
|
|
|
Does anyone know of a Visual Studio debugging visualizer (C#) that lets you view byte arrays in a large hex-editor fashion, rather than just the simple intellisense dropdown? (Read-only is OK)
I'm trying to compare byte arrays to see the differences and it's maddening switching between each intellisense dropdown and trying to remember the first one to compare it with the second one. It would be great if I could see them side by side.
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
Hmmm,
What's wrong with the built-in memory view?
Ctrl Alt M,1
Ctrl Alt M,2
|
|
|
|
|
Was unaware of this. I'll give it a try. I hope it works for managed code.
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
Keyboard shortcuts have changed over the years, it was ALT-6 for Memory-1 on older versions. You can always use the menu: Debug->Windows->Memory->Memory-1
|
|
|
|
|
You can "watch" your selection of variables including arrays. Click a variable, right-click, select "Add Watch".
It will waste one line for each element, so its good only when at least one of your arrays is a small one.
Luc Pattyn [My Articles]
The Windows 11 "taskbar" is disgusting. It should be at the left of the screen, with real icons, with text, progress, etc. They downgraded my developer PC to a bloody iPhone.
|
|
|
|
|
Thanks Luc, I'm writing a simple DNS parser, so the arrays are > 40 bytes.
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
In such case, I would add some code to visualize the data (some kind of ToString() method); then call it when the data changes (probably only in one or two locations), store the result in an extra class-level variable, and add a watch to that variable.
Slightly more work (unless you want it anyway e.g. for logging), but probably easier to use than a straight hex dump.
Luc Pattyn [My Articles]
The Windows 11 "taskbar" is disgusting. It should be at the left of the screen, with real icons, with text, progress, etc. They downgraded my developer PC to a bloody iPhone.
|
|
|
|
|
I considered what you suggest, but I quickly dismissed it because I'm super lazy.
(I would do it if I really had to.)
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
|
Awesome! Thanks Rick!
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
The Stukowski brothers are hunting in Canada when the first brother grabs his chest and falls to the ground. He doesn't seem to be breathing and his eyes are rolled back in his head. The other brother pulls out his cell phone and dials 911.
He says, "Operator! Operator! Help! Hellpp! My brother's dead. What can I do?"
The operator says calmly, "Just take it easy, I can help. First, let's make sure he's dead."
There's a few seconds of silence and then pow! .. the operator hears a shot.
The second brother comes back on the line and says, "Okay, now what?"
Real programmers use butterflies
|
|
|
|