Thread overview
need for network protocols
Aug 22, 2001
Tim Chemaly
Aug 23, 2001
Johan Bryssling
Aug 23, 2001
Jan Knepper
Aug 24, 2001
Bradeeoh
Aug 24, 2001
Jan Knepper
Aug 24, 2001
Rajiv Bhagwat
Aug 24, 2001
Johan Bryssling
August 22, 2001
Hi
I really like the idea of D but it does have one shortcoming...it fails to
mention any built support for network protocols such as TCP,UDP,FTPHTTP,
etc...
C++ is a real pain when it comes to network support which is probably one
more reason why developers are using Java more and more (since it does
provide support for network protocols). Nowdays it so big that it is
virtually unthinkable to write server side programs without some form of
networking included.



Regards

***********************************************

   Tim Chemaly
    Internet Application Developer
    Website: www.cypherstudio.com
    Cell: 0827290667
    Email: tchemaly@ing.sun.ac.za

***********************************************



August 22, 2001
Tim Chemaly wrote:
> I really like the idea of D but it does have one shortcoming...it fails to
> mention any built support for network protocols such as TCP,UDP,FTPHTTP,
> etc...
> C++ is a real pain when it comes to network support which is probably one
> more reason why developers are using Java more and more (since it does
> provide support for network protocols). Nowdays it so big that it is
> virtually unthinkable to write server side programs without some form of
> networking included.

That sounds like a library thing, not a language thing. Yes, D should have a fairly high level networking library available. Perhaps I'll go write one in C in my Copious Spare Time.

-Russell B
August 23, 2001
I MUST COMMENT THIS!!

> I really like the idea of D but it does have one shortcoming...it fails to mention any built support for network protocols such as TCP,UDP,FTPHTTP, etc...


C  has support for TCP, and UDP . HTTP and FTP are a two protocols that uses the protocol TCP. People are using java because they are lazy. But someone has to do the work behind it all or what do you think the language java was made of? =)

>C++ is a real pain when it comes to network support which is probably one
>  more reason why developers are using Java more and more (since it does
>  provide support for network protocols).

I dont think "C++ problem" are a problem..
However, you might do some stuff yourself (darn!!), like  wrapping the
socket funktions into a class. When you are on your way, its easy.

Creating a class looking like the java class is easy because the "java engine", the standard java classes, are linked to the current operative system's libraries (that is made in C!). So you might use the stile java classes have as inspiration. ;-)

When you have your nifty little socket class you could make a HTTP class or FTP class to implement the protocol (you need a protocol specification first downloaded from a RFC -site.) If you follow the specification you could now create a webserver, FTP server/ FTP clienten with your classes... Hurray!!!!

It's very fun to do stuff yourself.. Ask them you creates D.. A whole new compiler.. I can imagine that's both crazy and very funny, .

The pain is to find the information so my humble suggestion is to start looking in the man -pages on a linux or sun machine. (Even microsoft have documentation... )

command:
man 2 socket

The usage of sockets in windows and unix are VERY similar, (but you have to ask the windows system about a socket first, it exists more info about that in the microsoft knowledge base..)

And it exists implementations for FTP , HTTP and SSL ... etc.. for C and C++, more or less free.. Just look a bit harder and you will find.. =)

Big *sigh* on you lazy programmers.. ;-)

Regards,

Johan Bryssling , Software engineer, Micronet


August 23, 2001
> > I really like the idea of D but it does have one shortcoming...it fails to mention any built support for network protocols such as TCP,UDP,FTPHTTP, etc...
>
> C  has support for TCP, and UDP . HTTP and FTP are a two protocols that uses the protocol TCP. People are using java because they are lazy. But someone has to do the work behind it all or what do you think the language java was made of? =)

I do not think any :"language" as "language" as support for any type of network or network protocols... AFAIK support for "networking" as well as support for "operating systems" are brought to the "language" through a (function/class/whatever) library.

If someone does not like the way something works through a library... Get a different library... Not a different language! <g>

Jan


August 24, 2001
> I do not think any :"language" as "language" as support for any type of
network
> or network protocols... AFAIK support for "networking" as well as support
for
> "operating systems" are brought to the "language" through a
> (function/class/whatever) library.
>
> If someone does not like the way something works through a library... Get
a
> different library... Not a different language! <g>
>
> Jan
>

I agree on most levels, with reservations.  The "language" should not neccesarily support these things.  Even in Java, whether the support is built directly into the language or rather relies on the Java standard API is a little gray.  I think the point is, however, that the Java standard API provides support for all these things and more.  No toolkit or VM can be officially called a "Java" toolkit or VM unless it supports networking et. al exactly as specificed in the Java API.

I know this is stating a whole lot of obvious things, but the Java API is it's standard set of libraries.  And Java is so popular BECAUSE it has such large numbers of standardized libraries that are (loosely) guaranteed to work, no matter the platform.

With C/C++, libraries exist for most everything Java API libraries do, but there is no ONE library that does it all in the standardized way.

To come about a LONG full circle, I think what our friend may have originally intended to say is the D needs to have a networking library (and other libraries) that are A - high level enough and B - standardized.

I agree with B completely and A for the most part.

The answer to this issue given by Walter (as he's primarily concerned with the compiler) and others is that D can just wrap around all the C libraries that already exist.

But this does very little than WORSEN D's stance on the issue of standardized libraries.  :)

A point that could use some attention, but perhaps not at this stage.  Give us a solid compiler, let us start using the language for basic things, then Walter, if he see's fit, can CONTINUE to embarass C/C++ but making D's "stdlib" module be simple and fully featured.  :)

-Brady


August 24, 2001
Bradeeoh wrote:
> 
> To come about a LONG full circle, I think what our friend may have originally intended to say is the D needs to have a networking library (and other libraries) that are A - high level enough and B - standardized.
> 
> I agree with B completely and A for the most part.

The first high level network library to appear in D and be reasonably useful may well become D's standard.

I'd be willing to do some work on wrapping C/Winsock/Win32 into some very basic networking libraries for D (probably at a slightly higher level than the traditional sockets interface), but this wouldn't be an extremely high performance library -- probably fine for client-side applications, but not busy servers. I'm not a big web goober, so I probably wouldn't do http classes or anything.

I'd release source under very free terms -- something like what I did for my Ballisti-K language:

http://www.estarcion.com/exrecto/ballistik.html

As an aside, the Ballisti-K spec should give y'all a really good indicator of why you shouldn't pay any attention to my thoughts on language design.

-RB
August 24, 2001
Jan Knepper <jan@smartsoft.cc> wrote in message news:3B8517D1.3968EEC5@smartsoft.cc...
> > > I really like the idea of D but it does have one shortcoming...it
fails to
> > > mention any built support for network protocols such as
TCP,UDP,FTPHTTP,
> > > etc...
> >
> > C  has support for TCP, and UDP . HTTP and FTP are a two protocols that
uses
> > the protocol TCP. People are using java because they are lazy. But
someone
> > has to do the work behind it all or what do you think the language java
was
> > made of? =)
>
> I do not think any :"language" as "language" as support for any type of
network
> or network protocols... AFAIK support for "networking" as well as support
for
> "operating systems" are brought to the "language" through a
> (function/class/whatever) library.
>
> If someone does not like the way something works through a library... Get
a
> different library... Not a different language! <g>
>
> Jan
>
>

Not true. Look at 'Rebol'. It has inbuilt support for all the protocols, but then it is a language for writing net based apps. For a general purpose language like 'D', such things belong to a library, (or libraries, as you hint), no doubt.

By the way, the multitude of data types supported by Rebol are worth a look.
www.rebol.com and www.rebol.org
BTW, it now appears that they have gone commercial, so language discussions
would be buried somewhere on the site...
-- Rajiv



August 24, 2001
"Jan Knepper" <jan@smartsoft.cc> wrote in message news:3B8517D1.3968EEC5@smartsoft.cc...
> > > I really like the idea of D but it does have one shortcoming...it
fails to
> > > mention any built support for network protocols such as
TCP,UDP,FTPHTTP,
> > > etc...
> >
> > C  has support for TCP, and UDP . HTTP and FTP are a two protocols that
uses
> > the protocol TCP. People are using java because they are lazy. But
someone
> > has to do the work behind it all or what do you think the language java
was
> > made of? =)
>
> I do not think any :"language" as "language" as support for any type of
network
> or network protocols... AFAIK support for "networking" as well as support
for
> "operating systems" are brought to the "language" through a
> (function/class/whatever) library.
>
> If someone does not like the way something works through a library... Get
a
> different library... Not a different language! <g>
>
> Jan

Yes, that was the thing I meant.. actually.,. ;-)
I should have written "C has libraries that support the TCP protocol"..  not
"C supports TCP protocol".
I would be embarrasing to switch language to achive network-support..
*LAUGHT*

Java is just a language that wrapps old C-functions and makes the execution slower in progress.. (thanks you SUN, I can know see the graphics paint slowly and flicker when I use your graphiclibrary : "Swing" on my 800 MHZ, 256 megabyte ram, Pentium 3, Thank you SUN youre the greatest..). (Have they fixed this in JDK 1.4? I use Erlang... now-a-days.. so I cant tell .. ;-) )

The fun thing is that you could make C++ easy to understand and use, but who
the hell have the guts and time for it.
I guess we all just sit backs and waits for a nice and gentle hacker with no
life to create it.. and give it away freely.  (I will send him a gold medal
as "thank you" for his effort.)

... or wait for D to get completed.. =)

Regards

Johan Bryssling, Software Engineer, Micronet

ps. Sorry for my sarcasm but I heard a lot in this buisness that makes me laught my head off.


August 24, 2001
> I agree on most levels, with reservations.  The "language" should not neccesarily support these things.  Even in Java, whether the support is built directly into the language or rather relies on the Java standard API is a little gray.

Why?
Walter wrote a Java compiler and I don't think he ever included any networking
into the compiler...

> I think the point is, however, that the Java standard API
> provides support for all these things and more.  No toolkit or VM can be
> officially called a "Java" toolkit or VM unless it supports networking et.
> al exactly as specificed in the Java API.

Which is (was) the great thing about Java.

Currently (class) libraries for D are in the makening, but it will take a while before they are ready...

Jan