473,416 Members | 1,766 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,416 software developers and data experts.

Yukon and .NET 2.0 Wishlist

Here are a couple of dramatic requests that I've always thought should
be implemented.

1) Uniform null. I wish .NET would implement a uniform value for nulls
accross the board. Even into the database (especially with some of the
hype about what can be done in Yukon). Before passing this off as an
absurd statement, it could be done and would simplify code
dramatically. To me, it's one of those things that people just simply
don't think this could ever be solved so there is simply no demand for
it. I mean, we did research on different methods on how to solve this
and found many interesting approaches. One guy wrote reference type
classes for each datatype and added an IsNull property. This kills
effeciency though obviously. What we do is use int.MinValue,
DateTime.MinValue, etc to represent a null value. DBNull.Value's have
to be handled in a specific way as well as null's etc... I know to
solve this would be extremly difficult and may come at a cost, but
personally, I don't think a high level language (such as VB.NET, C#,
VB 6.0, etc) should have to deal with this stuff. This should be
handled at the assembly level. Maybe each value type could double in
storage space (since hardware and memory is becoming cheaper) and the
first bit could represent a null value. Or the memory manager could
store the bit on the stack when the variable is declared. Yada Yada
Yada...

2) For many of the same reasons as #1 (#1 is kind of a subset of #2),
why can't SQL Server and .NET have uniform types. This is really
pushing it now (I know) and probably will not happen anytime soon
(although Yukon may make steps towards this). I know this is a
drastic shift and would cause a lot of stuff to break, but it would be
the right thing to do and make code have less bugs accross the board.
For example, decimal, money, currency, DateTime, SmallTime, bit,
boolean and especially nulls (#1).

3) Automated creation of Solution Build Order built into Visual
Studio. The more I think about it, the more I'm convinced that this
would be a pretty easy "Add-On" to write. Microsoft refused to do this
and would have made many peoples lives a whole lot easier I think. In
short what this would mean is that you should be able to add 15
projects to a solution and then click on a button and it figures out
your build order depending on the references of each project. Visual
Studio includes a Solution Build Order but the problem is that you
have to set this list manually. And whenever there is a change (such
as adding a new project or a reference inside a project changing), you
have to update this list accordingly. The same even hold's true for
reference paths inside of a single project if you have (this only
becomes an issue if you need to have multiple reference paths inside
that project). I do see the need to allow the user to manually do it
also, but this would be a huge addition I think.

4) All arrays should start at 1! This is something (to me) that is
legacy and won't go away (probably ever). There really is no need for
zero based arrays. We are in high level languages now, so we should
be dealing with logic! I think the reason so many people stick to the
notion of zero based arrays is that it makes them feel like part of
the "c++" crowd and not part of the "VB" crowd, where many people
think c++ requires more skills. (I really do think this is the biggest
reason). Anyway, my thougths on this have nothing to do with any
particular language. I'm skilled in c#, VB.NET, VB 6.0 and C++ 6.0 so
I'm not biased at all. I mean, let's face it: If an array has 3 items
in it, then the Count = 3 and you can reference the last item like
this array[array.Count] which is completely logical to me.

Dave
Nov 15 '05
52 2813
Yes because consulting documention for API calls you are making is a BAD
thing if you dont know to call them.
"Jon Skeet [C# MVP]" <sk***@pobox.com> wrote in message
news:MP************************@msnews.microsoft.c om...
<<.>> wrote:
Thats how they SHOULD have done it on C# in my view, make the start user
definable then its flexible for everybody how they want to represent theyre data.


However, if there's no "normal" convention used for all non-specialist
uses, you need to consult the documentation carefully every time a 3rd
party library takes or returns an array, just to find out its base. No
thanks.
With this method they can still implement this change in later versions
while at the same time not breaking earlier versions, we can but hope to
have userdefinable start boundries of arrays.


You already can, if you're prepared to use the .NET Array type rather
than just C# arrays which are more restrictive. If you cast the Array
to IList, you can even use an indexer on it to make it look like normal
array access.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too

Nov 15 '05 #51
<.> wrote:
Thats how they SHOULD have done it on C# in my view, make the start user
definable then its flexible for everybody how they want to represent
theyre data.

With this method they can still implement this change in later versions
while at the same time not breaking earlier versions, we can but hope to
have userdefinable start boundries of arrays.


Well... maybe. I should have added that the efficiency of the underlying
implementation should be of concern to any serious developer. I suspect
that zero-based arrays are much simpler to implement. But I'm an old
dinosaur, I guess, who cares about efficieny when you have a zillion
MB and a CPU going at a zillion MHz? Seems like nobody... :-(
Arnold the Aardvark

Nov 15 '05 #52
Isnt that the job of the compiler, just like foreach HIDES the IEnumerator
and so on.
"Arnold the Aardvark" <aa******@REMOVE.tubulidentata.demon.co.uk> wrote in
message news:bu*******************@news.demon.co.uk...
<.> wrote:
Thats how they SHOULD have done it on C# in my view, make the start user
definable then its flexible for everybody how they want to represent
theyre data.

With this method they can still implement this change in later versions
while at the same time not breaking earlier versions, we can but hope to
have userdefinable start boundries of arrays.


Well... maybe. I should have added that the efficiency of the underlying
implementation should be of concern to any serious developer. I suspect
that zero-based arrays are much simpler to implement. But I'm an old
dinosaur, I guess, who cares about efficieny when you have a zillion
MB and a CPU going at a zillion MHz? Seems like nobody... :-(
Arnold the Aardvark

Nov 15 '05 #53

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
by: Lorenzo Braidi | last post by:
Hallo everyone, is there someone who is partecipating to the Microsoft Yukon Beta test and who can send me some picture of the new GUI of Enterprise Manager and Query Analyser? Send it at my...
1
by: Jack Victor | last post by:
Hi, Can anyone please tell me if there will be support in SQL2005 - Yukon for datafiles to be placed on Compressed volumes or if there will be compression of the data that is transparent to the...
0
by: Roberto Barrantes | last post by:
I installed Yukon Beta 2 in a computer with windows server 2003 when I tried to create a Data Transformation Project I got the following error: Failed to open package file "C:\Documents and...
6
by: James Liu | last post by:
I did some search and didn't find anything about whether Yokon will support sequence object. Appreciate it if you can reply with some resources. Thanks, James
15
by: nospam | last post by:
Once Yukon is released (whenever that might be) does anyone from MS have any comment on licensing for Yukon and on SQL 2000. I really don't think anyone with SQL 2000 licenses are going to...
83
by: newby2c | last post by:
My personal K&R (3rd edition) wish list: 1. That a 3rd edition is actually published! 2. Make any and all corrections from earlier editions. 3. Update to comply with the c99 Standard. 4. A...
1
by: Marco | last post by:
Is there a wishlist for c# (or .Net) where we could suggest changes or improvements ? Mine is to have access to SmallChange property of Panel scrollbars as well as access to theirs Scroll event....
5
by: | last post by:
I love the .NET framwework. Compared to mfc this is a dream to work with. I would love if the C# and maybe other languages too, somehow gives more friendly messages when executed on a machine...
1
by: Olaf Baeyens | last post by:
Something for the C#/JIT wishlist. I am looking at the generated IL Assembler code and the generated real x86 code and I am facinated about the quality of the generated code. It comes to near...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.