Re: 3rd party Device driver development tool or pure wdm driver development..Which is the best

>>I’m not arguing for or against any particular methodology here, just
against the bag full of tricks that obscure intention for the sake of
code size or fear of the unknown.<<

I do not recall saying that I use a “bag of tricks”. I do understand the
reason for a good architecture and design. I also understand the
reasoning behind the KISS principle. I have seen more projects go late
and over budget and even get canceled because of the over engineering
and overly complex designs. Keeping it simple is always the best choice.
I will defend this position till my death.

Fear of the unknown in that I am unable to properly debug my driver in a
timely fashion; yes. Unknown in that I do not know OO methodologies and
how to use them; no.

In a service or other related UM component, C++ and OO is awesome. There
is a time and a place for everything.

The NT kernel-mode API is object based and lends itself to using C to
produce an object based design and implementation. Object based is a
perfectly reasonable methodology and does allow for code reuse.

In response to a previous posting. Why must I cut and past if I am not
using OO methodologies or C++? Can I not have a .LIB or DLL .SYS file
and reuse my components as well?

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Todd Flanagan
Sent: Tuesday, October 30, 2001 11:05 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

Frankly, I disagree. I’d settle for a driver with 2/3 more lines for an
architecture that’s 3 times easier to explain to someone who has to
maintain or extend it. If that means using OO methodology, then have at
it. I’m not arguing for or against any particular methodology here,
just against the bag full of tricks that obscure intention for the sake
of code size or fear of the unknown.

Also, just because it has been that way forever doesn’t make it right.

Todd

-----Original Message-----
From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
Sent: Tuesday, October 30, 2001 2:26 PM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

Let me say this:

I have nothing against tool kits. Esp. if they are available with
source. My argument is against C++ OO development in a KM driver.

Drivers should be small and tight. I think we all agree with this; it
has been so forever in the “black magic” world of driver development.
So, I content that if you NEED to use C++ and OO in your driver, maybe

more time should be spent rethinking the architecture and design.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jan Bottorff
Sent: Tuesday, October 30, 2001 7:38 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

>If you want a tool that will get you 0-60 faster than your
competition
>could ever
>even think of getting there, use a tool like WinDK.

I always thought it was appropriate to learn to drive BEFORE finding
yourself at the steering wheel of a potential lethal weapon going 60.

  • Jan

You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@greshamstorage.com

To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Almost; I use C.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Roddy, Mark
Sent: Tuesday, October 30, 2001 10:28 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

So you write all of your drivers in assembly language, correct?

-----Original Message-----
From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
Sent: Tuesday, October 30, 2001 2:26 PM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

Let me say this:

I have nothing against tool kits. Esp. if they are available with
source. My argument is against C++ OO development in a KM driver.

Drivers should be small and tight. I think we all agree with this; it
has been so forever in the “black magic” world of driver development.
So, I content that if you NEED to use C++ and OO in your driver, maybe
more time should be spent rethinking the architecture and design.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]
On Behalf Of Jan Bottorff
Sent: Tuesday, October 30, 2001 7:38 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

If you want a tool that will get you 0-60 faster than your competition
could ever even think of getting there, use a tool like WinDK.

I always thought it was appropriate to learn to drive BEFORE finding
yourself at the steering wheel of a potential lethal weapon going 60.

  • Jan

You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@stratus.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Oh sure you can write re-usable extensible code in C, or in assembler
for that matter. You can also pound nails with a screwdriver, and I’ve
seen excellent carpenters who use hammers to drive screws.

In response to a previous posting. Why must I cut and past if
I am not using OO methodologies or C++? Can I not have a .LIB
or DLL .SYS file and reuse my components as well?


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

All that bloat? Hideous function call overhead? Unused registers? Shame.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jamey Kirby
Sent: Tuesday, October 30, 2001 7:45 PM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool
or pure wdm driver development…Which is the best???

Almost; I use C.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Roddy, Mark
Sent: Tuesday, October 30, 2001 10:28 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool
or pure wdm driver development…Which is the best???

So you write all of your drivers in assembly language, correct?

-----Original Message-----
From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
Sent: Tuesday, October 30, 2001 2:26 PM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool
or pure wdm driver development…Which is the best???

Let me say this:

I have nothing against tool kits. Esp. if they are available
with source. My argument is against C++ OO development in a KM driver.

Drivers should be small and tight. I think we all agree with
this; it has been so forever in the “black magic” world of
driver development. So, I content that if you NEED to use C++
and OO in your driver, maybe more time should be spent
rethinking the architecture and design.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]
On Behalf Of Jan
Bottorff
Sent: Tuesday, October 30, 2001 7:38 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool
or pure wdm driver development…Which is the best???

>If you want a tool that will get you 0-60 faster than your
competition
>could ever even think of getting there, use a tool like WinDK.

I always thought it was appropriate to learn to drive BEFORE finding
yourself at the steering wheel of a potential lethal weapon going 60.

  • Jan

You are currently subscribed to ntdev as:
xxxxx@storagecraft.com To unsubscribe send a blank email to
leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as:
xxxxx@stratus.com To unsubscribe send a blank email to
leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as:
xxxxx@storagecraft.com To unsubscribe send a blank email to
leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as:
xxxxx@hollistech.com To unsubscribe send a blank email to
leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Screws and Nails !!!
Hey, that’s a re-used analogy. :-))

< This thread is marked for Guinness Book:
"Lines of replies in ‘NT-DEV’ ">

| Norbert Kawulski | mailto:xxxxx@stollmann.de |
| Stollmann T.P.GmbH, Development | http://www.stollmann.de |
–If it’s ISDN or Bluetooth, make sure it’s driven by Stollmann–

“Whatever crushes individuality is despotism, by whatever name it may
be called. - John Stuart Mill”

Oh sure you can write re-usable extensible code in C, or in assembler
for that matter. You can also pound nails with a screwdriver, and I’ve
seen excellent carpenters who use hammers to drive screws.

>
> In response to a previous posting. Why must I cut and past if
> I am not using OO methodologies or C++? Can I not have a .LIB
> or DLL .SYS file and reuse my components as well?
>


You are currently subscribed to ntdev as: xxxxx@stollmann.de
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

This has to be the most moronic post of this thread. Hammers are
designed to pound nails. Screw drivers to drive screws.

Are you saying that C was not designed to write reusable and linkable
code? How stupid. You must be one of those programmers that learned C++
and forgot to learn C.

IDIOT!

Jamey

Oh sure you can write re-usable extensible code in C, or in assembler
for that matter. You can also pound nails with a screwdriver, and I’ve

seen excellent carpenters who use hammers to drive screws.

>
> In response to a previous posting. Why must I cut and past if
> I am not using OO methodologies or C++? Can I not have a .LIB
> or DLL .SYS file and reuse my components as well?
>


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

I mean all of this in fun… Please do not be offended.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jamey Kirby
Sent: Wednesday, October 31, 2001 8:43 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

This has to be the most moronic post of this thread. Hammers are
designed to pound nails. Screw drivers to drive screws.

Are you saying that C was not designed to write reusable and linkable
code? How stupid. You must be one of those programmers that learned C++
and forgot to learn C.

IDIOT!

Jamey

Oh sure you can write re-usable extensible code in C, or in assembler
for that matter. You can also pound nails with a screwdriver, and I’ve

seen excellent carpenters who use hammers to drive screws.

>
> In response to a previous posting. Why must I cut and past if I am
> not using OO methodologies or C++? Can I not have a .LIB or DLL .SYS
> file and reuse my components as well?
>


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

> If you want to see the pen-ultimate in obscure languages, then look at

FORTH. Any assembly language is inherently clearer than that dialect of
insane gibberish.

LOL! LOL! ROTFL! I couldn’t agree more !!! :slight_smile:

Gary G. Little
Staff Engineer
Broadband Storage, Inc.
xxxxx@broadstor.com

-tzvetan


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Wasn’t it MmGetSystemAddressForMdl that ‘silently changed the semantics’
between NT4 and W2K, or perhaps even a service pack of NT4? There is
nothing about C that prevents this rudeness at all. Nor, as in the case
that Max layed out, is there anything at all about C that prevents a
change in some data structure or algorithm in one piece of code from
breaking assumptions made in some other dependent piece of code. One of
the strong arguments for the OO method is in fact its ability to reduce
the cascading change effects that plague software throughout the
software lifecycle. The massivly fragile nature of complex traditional
‘top down structured’ software projects is exactly what drove the
development of OOP. The standard example is the typical proliferation of
switch statements throughout a complex C project that, everytime a new
case is added must all be identified and repaired.

But I grow weary of this. Somehow the argument that we shouldn’t use C++
because it introduces all these dangerous things like virtual functions,
templates, overloading, and we needn’t use C++ because we can do
equivalents for all of those neat things in C has a sort of hollow ring
to it.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Alexander Krol
Sent: Wednesday, October 31, 2001 12:35 PM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool
or pure wdm driver development…Which is the best???

>-----Original Message-----
>From: Roddy, Mark [mailto:xxxxx@stratus.com]
>Sent: Wednesday, October 31, 2001 5:46 PM
>To: NT Developers Interest List
>Subject: [ntdev] Re: 3rd party Device driver development
tool or pure
>wdm driver development…Which is the best???

>Why thank you.

>No I was saying that C++ has compiler extensions designed to make it
>easier to write re-usable and extensible code. Those
extension are in
>fact missing from C. That is why C++ is a superset of C.

Not exactly - there were small but significant differences
between C and C-like subset of C++ from the very beginning.
Currently, with the advent of C99 standard, divergence is a
lot more pronounced.

>Thus you have various contortions in the NT operating system
to provide
what
>resembles class inheritance and virtual functions. Thus you
have horrid
>side-effect ridden function macros instead of inline functions. Thus
>you have similar functions with slightly different names providing
>identical services for sets of similar objects, rather than
templates
>or overloaded function names. I think I omitted mentioning
‘linkable’.

What makes C++ a very dangerous instrument in inexperienced
hands is exactly its ability to silently change semantics
without changing interface ( especially in presence of STL -
well, in this case a simple line like
if (status != status_t::ok_e)
may hide function call; hopefully, nobody advocates using STL
in driver development yet).

>By the way, there are quite a few carpenters who insist that a
>screwdriver is for removing screws, and a hammer is for
inserting them.

No arguing with this :slight_smile: The whole thread is about definition
of a screwdriver and a hammer, though :slight_smile:

Regards,
Alex Krol


You are currently subscribed to ntdev as:
xxxxx@hollistech.com To unsubscribe send a blank email to
leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Why has no one considered using the Adobe PostScript (c) language for driver
development?

Thos

----- Original Message -----
From: “Moreira, Alberto”
To: “NT Developers Interest List”
Sent: Thursday, November 01, 2001 9:52 AM
Subject: [ntdev] Re: 3rd party Device driver development tool or pure wdm
driver development…Which is the best???

> Well, if you want to do a tiny bit of work, you can write it like this:
>
> 1 A Load Add 4 Multiply Print Newline
>
> You can, it’s just as good Forth. A tiny bit additional work, you can make
> Add, Multiply and Print infix and say for example
>
> Print 1 Add Dereference A Multiply 4 Newline
>
> And then you can even put in parentheses to look saner, if that’s what you
> call “sane”. The point is, the language is pliable, if you don’t like the
> syntax, invent your own, and implement it, the language makes it very
easy.
> But somehow I don’t think that “%d\n” is any saner than anything else. But
> hey, opinions vary!
>
> Alberto.
>


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Why are you assuming it hasn’t been tried? If memory serves, I believe the
original NeXt cube was programmed entirely in PostScript. :wink:

-Art

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Thomas F. Divine
Sent: Thursday, November 01, 2001 10:07 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

Why has no one considered using the Adobe PostScript (c) language for driver
development?

Thos

----- Original Message -----
From: “Moreira, Alberto”
To: “NT Developers Interest List”
Sent: Thursday, November 01, 2001 9:52 AM
Subject: [ntdev] Re: 3rd party Device driver development tool or pure wdm
driver development…Which is the best???

> Well, if you want to do a tiny bit of work, you can write it like this:
>
> 1 A Load Add 4 Multiply Print Newline
>
> You can, it’s just as good Forth. A tiny bit additional work, you can make
> Add, Multiply and Print infix and say for example
>
> Print 1 Add Dereference A Multiply 4 Newline
>
> And then you can even put in parentheses to look saner, if that’s what you
> call “sane”. The point is, the language is pliable, if you don’t like the
> syntax, invent your own, and implement it, the language makes it very
easy.
> But somehow I don’t think that “%d\n” is any saner than anything else. But
> hey, opinions vary!
>
> Alberto.
>


You are currently subscribed to ntdev as: xxxxx@nfr.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

On 11/01/01, ““Art Baker” ” wrote:
> Why are you assuming it hasn’t been tried? If memory serves, I believe the
> original NeXt cube was programmed entirely in PostScript. :wink:
>
> -Art

From what little I know the language of choice on NeXTstep was Objective C.
PostScript was used for display - same as the (later) Display PostScript
extension for X. Underlying OS was Mach. Language of choice - C.

Gordon


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

For the humorously challenged on this list: IT WAS A JOKE. (That’s what the
little smiley face means…)

As the intrepid Mark Roddy has already pointed out, NeXT only used
PostScript for display generation.

Regards,
-Art Baker

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of xxxxx@iee.org
Sent: Thursday, November 01, 2001 11:01 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

On 11/01/01, ““Art Baker” ” wrote:
> Why are you assuming it hasn’t been tried? If memory serves, I believe
the
> original NeXt cube was programmed entirely in PostScript. :wink:
>
> -Art

>From what little I know the language of choice on NeXTstep was Objective C.
PostScript was used for display - same as the (later) Display PostScript
extension for X. Underlying OS was Mach. Language of choice - C.

Gordon


You are currently subscribed to ntdev as: xxxxx@nfr.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Life is too short to Cobol.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Moreira, Alberto
Sent: Thursday, November 01, 2001 6:52 AM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

Well, if you want to do a tiny bit of work, you can write it like this:

1 A Load Add 4 Multiply Print Newline

You can, it’s just as good Forth. A tiny bit additional work, you can
make Add, Multiply and Print infix and say for example

Print 1 Add Dereference A Multiply 4 Newline

And then you can even put in parentheses to look saner, if that’s what
you call “sane”. The point is, the language is pliable, if you don’t
like the syntax, invent your own, and implement it, the language makes
it very easy. But somehow I don’t think that “%d\n” is any saner than
anything else. But hey, opinions vary!

Alberto.

-----Original Message-----
From: Gary Little [mailto:xxxxx@Broadstor.com]
Sent: Wednesday, October 31, 2001 7:59 PM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

Thanks Alberto, you just proved my point about obscurity.

Printf does at least have a common English component that immediately
tells the reader they about to print something. cout, again has a common
component
– out.

1 A @ + 4 * .CR is something I expect Sgt. Snorkel to yell at Beetle
Bailey.

Gary G. Little
Staff Engineer
Broadband Storage, Inc.
xxxxx@broadstor.com

-----Original Message-----
From: Moreira, Alberto [mailto:xxxxx@compuware.com]
Sent: Wednesday, October 31, 2001 1:14 PM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

What’s wrong with 1 A @ + 4 * . CR ?

Quicker to write than printf(“%x\n”,4*(A+1)), or even
cout<<4*(A+1)<
Alberto. :slight_smile:

-----Original Message-----
From: Gary Little [mailto:xxxxx@Broadstor.com]
Sent: Wednesday, October 31, 2001 1:09 PM
To: NT Developers Interest List
Subject: [ntdev] Re: 3rd party Device driver development tool or pure
wdm driver development…Which is the best???

"I’d take the bet that any HOL is 3 times easier to explain than
assembly for any non-trivial application written to the same level of
quality. "

If you want to see the pen-ultimate in obscure languages, then look at
FORTH. Any assembly language is inherently clearer than that dialect of
insane gibberish.

Gary G. Little
Staff Engineer
Broadband Storage, Inc.
xxxxx@broadstor.com


You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@broadstor.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

OK guys, does anyone else think maybe this horse is dead and should be
burried?

Greg


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

> breaking assumptions made in some other dependent piece of code. One of

the strong arguments for the OO method is in fact its ability to reduce
the cascading change effects that plague software throughout the
software lifecycle. The massivly fragile nature of complex traditional
‘top down structured’ software projects is exactly what drove the
development of OOP.

Looks like the OO code which abuses inheritance is ever worse in this respect.
Fixing a bug in a base class is a dangerous thing. It can alter some “interesting” semantics descendants rely on.

I have read the article in “Byte” magazine as early as in 94. It was - “object-oriented programming have failed”. And the
explanation why.
Traditional OO is in fact replaced with component software like OCXes. They, for instance, do not use inheritance.

But I grow weary of this. Somehow the argument that we shouldn’t use C++
because it introduces all these dangerous things like virtual functions,
templates, overloading, and we needn’t use C++ because we can do
equivalents for all of those neat things in C has a sort of hollow ring

C allows more fine grained control over what is really done.
Using STL + #import keyword is a great way for writing the database-oriented code, but this is very far from C. This is more VB-like
or Java-like style.
Use coarse-grained constructs with ease to speed up the development of simple and “linear” things.

Once I wrote the web-based email system which stored messages in MSSQLServer or Oracle and accessed it via ADO. The core component
was a COM DLL called from ASP pages. I used ATL for COM skeleton, #import <msado20.dll> for database access, _bstr_t for strings
(natural for code generated by #import) and STL for containers to avoid using MFC at all.
Yes, the database oriented code benefit a lot from this. In fact, I would suggest the above for people writing database-oriented C++
code.

But what about POP3, SMTP and MIME code (UUENCODE, base64, multipart/mixed and such)? All of this could be written in C. It is
written in fact in C, though “technically” it is C++.

Different tools for different jobs.

Max


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com</msado20.dll>

> Why are you assuming it hasn’t been tried? If memory serves, I believe the

original NeXt cube was programmed entirely in PostScript. :wink:

NextStep OS I saw in 1994 had BSD UNIX config files, Mach kernel (the syscall API is BSD compatible), PostScript-based graphics,
excellent beautiful UI (Office bar from post-95 Offices is borrowed from there), good GUI config tools (better then current Linux)
and Delphi-like development kit, the language was Objective C (OO C extension, more OO and higher-level and less-C-compatible then
C++).

For this early time (NextStep was there in 91 or such), the development kit was really amazing, if compared to MS SDK or even
Borland C++ for Windows.

Max


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

> From what little I know the language of choice on NeXTstep was Objective C.

For GUI.
Their GUI was IIRC deeply “married” with Objective C.

PostScript was used for display - same as the (later) Display PostScript
extension for X.

Yes, for GDI level.
Dunno is NextStep DPS was in any relation to NeWS though.

Max


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com