Sign In
Fabulous Adventures In Coding
Eric Lippert's Blog
Options
About
Email Blog Author
RSS for posts
Atom
RSS for comments
OK
Search
Advanced search options...
Search In:
Everything
Blogs
Forums
People
Groups
Places
Pages
Date range:
All Time
Last Year
Last 6 Months
Last 3 Months
Last Month
Last Week
Last Two Days
Tags
Aargh! (8)
accuracy (6)
Arrays (8)
ASP (11)
AStar (5)
Async (15)
bad jokes (14)
Begging the question (4)
Benford's Law (3)
Best Of FAIC (12)
Big Words (5)
Books (23)
Breaking Changes (24)
Brittle Base Classes (6)
C# (326)
C# 4.0 (39)
C# 5.0 (10)
Cargo Cult Programming (4)
cast operator (3)
Channel 9 (6)
Charts (6)
closures (3)
Code Generation (10)
Code Quality (29)
COM Programming (57)
Conditional Operator (3)
Continuation Passing Style (11)
Conversions (16)
Covariance and Contravariance (22)
customer service (4)
declaration spaces (5)
definite assignment (3)
Dialogue (14)
English Usage (11)
exception handling (9)
Floating Point Arithmetic (15)
grammars (9)
graph colouring (5)
GUIDs (3)
Hashing (9)
High Dimensional Spaces (5)
Immutability (27)
integer arithmetic (5)
Interviewing (8)
Introduction (6)
It Hurts When I Do This (5)
Iterators (10)
JScript (93)
JScript .NET (29)
keywords (4)
Lambda Expressions (20)
Language Design (62)
local variables (3)
localization (3)
Mathematics (18)
Memory Management (13)
Metablogging (9)
Mistakes (6)
Music (6)
myths (7)
namespaces (5)
Non-computer (37)
Optional arguments (5)
Overload Resolution (9)
Pages (25)
Performance (48)
precedence (4)
precision (7)
protected (7)
Puzzles (49)
quotable quotations (4)
Rants (51)
Rarefied Heights (52)
reachability (4)
Recursion (26)
reference (4)
Regular Expressions (13)
Relationships (4)
Salt (4)
Science (12)
scope (5)
Scripting (189)
Security (46)
shadowcasting (6)
SimpleScript (30)
Software development methodology (13)
Static Methods (6)
Threading (18)
Topological Sort (4)
Type Inference (18)
type safety (4)
unsafe code (4)
Value Types (11)
VBScript (80)
Video (12)
virtual dispatch (9)
VSTO (10)
warnings (5)
What's The Difference? (11)
Zombies (4)
Archive
Archives
May 2012
(1)
April 2012
(5)
March 2012
(3)
February 2012
(7)
January 2012
(5)
December 2011
(9)
November 2011
(4)
October 2011
(3)
September 2011
(3)
August 2011
(2)
July 2011
(5)
June 2011
(3)
May 2011
(7)
April 2011
(6)
March 2011
(9)
February 2011
(8)
January 2011
(7)
December 2010
(4)
November 2010
(8)
October 2010
(11)
September 2010
(8)
July 2010
(7)
June 2010
(7)
May 2010
(10)
April 2010
(9)
March 2010
(10)
February 2010
(8)
January 2010
(8)
December 2009
(5)
November 2009
(9)
October 2009
(9)
September 2009
(8)
August 2009
(9)
July 2009
(9)
June 2009
(12)
May 2009
(9)
April 2009
(9)
March 2009
(10)
February 2009
(4)
January 2009
(7)
November 2008
(2)
October 2008
(5)
September 2008
(4)
August 2008
(1)
July 2008
(2)
June 2008
(3)
May 2008
(11)
April 2008
(3)
March 2008
(2)
February 2008
(5)
January 2008
(5)
December 2007
(7)
November 2007
(5)
October 2007
(13)
September 2007
(3)
August 2007
(6)
July 2007
(2)
June 2007
(7)
May 2007
(4)
April 2007
(9)
March 2007
(2)
January 2007
(5)
November 2006
(3)
October 2006
(1)
September 2006
(1)
August 2006
(1)
July 2006
(2)
June 2006
(4)
May 2006
(5)
April 2006
(3)
March 2006
(4)
January 2006
(1)
December 2005
(7)
November 2005
(7)
October 2005
(9)
September 2005
(8)
August 2005
(9)
July 2005
(7)
June 2005
(7)
May 2005
(7)
April 2005
(12)
March 2005
(7)
February 2005
(6)
January 2005
(13)
December 2004
(9)
November 2004
(3)
October 2004
(5)
September 2004
(7)
August 2004
(14)
July 2004
(10)
June 2004
(11)
May 2004
(20)
April 2004
(26)
March 2004
(32)
February 2004
(14)
January 2004
(16)
December 2003
(7)
November 2003
(13)
October 2003
(32)
September 2003
(36)
May, 2004
MSDN Blogs
>
Fabulous Adventures In Coding
>
May, 2004
Posts
Subscribe via RSS
Sort by:
Most Recent
|
Most Views
|
Most Comments
Excerpt View
|
Full Post View
Fabulous Adventures In Coding
Marshal-by-ref versus Serializable Objects
Posted
over 8 years ago
by
Eric Lippert
32
Comments
(There's been a sudden influx in blog readers asking me good questions, which is great. Be patient; I'll try to cover them over the next few entries.) In response to yesterday's entry on serializable JScript .NET objects, a reader asked ...
Fabulous Adventures In Coding
JScript .NET Classes Are Serializable -- Surprise!
Posted
over 8 years ago
by
Eric Lippert
8
Comments
You learn something new every day in this job. Or, more accurately, some days you learn things again that you'd forgotten years ago. Someone just asked me why it is that all JScript .NET classes are serializable. I admit it, my first reaction...
Fabulous Adventures In Coding
You Can't Convert Data Structures To Strings In VBScript Without Breaking A Few Eggs
Posted
over 8 years ago
by
Eric Lippert
16
Comments
Here's a question I get every now and then: I've written a VBScript program which calls a method on an object that returns an array of bytes containing a GUID. VBScript only supports arrays of variants. How can I turn this into a human...
Fabulous Adventures In Coding
Revisionist History
Posted
over 8 years ago
by
Eric Lippert
4
Comments
Based on the excellent user feedback, I have significantly revised my article on the history of the strange VB/VBScript programming practice of habitually clearing objects unnecessarily right before they go out of scope. The revisions were sufficiently...
Fabulous Adventures In Coding
Original: When Are You Required To Set Objects To Nothing?
Posted
over 8 years ago
by
Eric Lippert
3
Comments
NOTE: I have significantly revised this article. What you are reading now is the archive of the original posting. The updated version is here http://blogs.msdn.com/ericlippert/archive/2004/04/28/122259.aspx It's getting into sailing/kite flying...
Fabulous Adventures In Coding
Results Of The Fibonacci Challenge Are In
Posted
over 8 years ago
by
Eric Lippert
5
Comments
Another bunch of good replies to my challenge of yesterday. And again, a bunch of answers that I didn't expect, and some of the points that I was thinking of weren't mentioned. People seem to like this more conversational format; I'll probably use...
Fabulous Adventures In Coding
How Not To Teach Recursion
Posted
over 8 years ago
by
Eric Lippert
64
Comments
A Joel On Software reader asked the other day for examples of recursive functions other than old chestnuts like Fibonacci or factorial. Excellent question. I suggested topological sort , of course, but there are plenty of other examples that are way better...
Fabulous Adventures In Coding
JScript, Localization and Those Wacky Newfoundlanders
Posted
over 8 years ago
by
Eric Lippert
6
Comments
I was talking about localization in general the other day. Today, some brief notes on localization in JScript Classic. A while back, a coworker asked me: Does toLocaleString() do anything different than toString() when locale changes? I am especially...
Fabulous Adventures In Coding
Dude, Where's My Asymptotic Order Analysis?
Posted
over 8 years ago
by
Eric Lippert
4
Comments
"There is something missing from this analysis. Saying that this is an O(n) algorithm perhaps isn't quite the whole story. What did I leave out? That line in yesterday's post generated lots of good commentary. Several people mentioned some...
Fabulous Adventures In Coding
The Stygian Depths Of Hacked-Together Scripts
Posted
over 8 years ago
by
Eric Lippert
30
Comments
Last time on FABULOUS ADVENTURES: Eric Lippert: The second term is asymptotically insignificant compared to the first, so we'll throw it away, and declare that any sort on a list of n items has at least a worst case of O(n log n) comparisons. Leo...
Fabulous Adventures In Coding
The Rarefied Heights of Mathematical Purity
Posted
over 8 years ago
by
Eric Lippert
11
Comments
A number of people have asked me for the software I used yesterday to extract the Google queries from the .TEXT referrer log. Have patience, and all will be revealed. In this and the next blog entries I'm going to demonstrate the difference between...
Fabulous Adventures In Coding
Riddle me this, Google
Posted
over 8 years ago
by
Eric Lippert
36
Comments
One of the reasons why I do all this technical stuff in a blog is to leverage the power of search engines like Google. I wrote a program the other day to go through the referrer log and extract all the Google queries that sent people to my page, and I...
Fabulous Adventures In Coding
Some LΘ℃αℓization Questions
Posted
over 8 years ago
by
Eric Lippert
15
Comments
A reader asked me a few questions about localization the other day. That's not a subject that I have a lot of experience on, but I can speak to it a bit. (I know that I've seen a blog from a Microsoft localization PM somewhere in the last six months,...
Fabulous Adventures In Coding
Aaargh, Part Six: One More Thing About Comments
Posted
over 8 years ago
by
Eric Lippert
16
Comments
Gripe #7: Use The Right Struct For The Job I meant to include this one in yesterday's gripe about comments, as this illustrates a time when I found a comment that should never have been there. The person who wrote the comment should have realized that...
Fabulous Adventures In Coding
Aargh, Part Five: Comment Rot
Posted
over 8 years ago
by
Eric Lippert
24
Comments
Gripe #6: Comment Rot If you've been reading my SimpleScript code you might have noticed that there are very few comments in my code. That's deliberate. Why do we have comments in the first place? We have comments because sometimes the semantics...
Fabulous Adventures In Coding
SimpleScript Part Seven: Binder Skeleton
Posted
over 8 years ago
by
Eric Lippert
17
Comments
In Part Five I was discussing modules: there is a "global module" and any number of additional modules. Each module is associated with a named item, and the only module which is associated with more than one named item is the global module. This means...
Fabulous Adventures In Coding
invoke.cpp
Posted
over 8 years ago
by
Eric Lippert
0
Comments
#include "headers.h" HRESULT InvokeDispatch(IDispatch * pdisp, DISPID dispid, REFIID riid, LCID lcid, WORD flags, DISPPARAMS * pDispParams, VARIANT * pvarResult, EXCEPINFO * pExcepInfo, UINT * pError) { AssertReadPtr(pdisp); HRESULT hr; // We...
Fabulous Adventures In Coding
invoke.h
Posted
over 8 years ago
by
Eric Lippert
0
Comments
#ifndef INVOKE_H // { #define INVOKE_H extern HRESULT InvokeDispatch(IDispatch * pdisp, DISPID dispid, REFIID riid, LCID lcid, WORD flags, DISPPARAMS * pDispParams, VARIANT * pvarResult, EXCEPINFO * pExcepInfo, UINT * pError); extern BOOL IsValidDispatch...
Fabulous Adventures In Coding
binder.cpp
Posted
over 8 years ago
by
Eric Lippert
1
Comments
#include "headers.h" Binder::Binder() { DLLAddRef(); this->m_cref = 1; this->m_thread = GetCurrentThreadId(); } Binder::~Binder(void) { DLLRelease(); } HRESULT Binder::Create(Binder * * ppBinder) { AssertOutPtr(ppBinder); *ppBinder ...
Fabulous Adventures In Coding
binder.h
Posted
over 8 years ago
by
Eric Lippert
0
Comments
#ifndef BINDER_H // { #define BINDER_H class Binder : public IDispatch { protected: class Name { public: Name(); ~Name(); HRESULT SetValue(VARIANTARG * pvar); HRESULT GetValue(VARIANT * pvar); BOOL IsFunction(void); HRESULT ExecuteFunction...
Page 1 of 1 (20 items)