FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

What is DSC?

 
Post new topic   Reply to topic     Forum Index -> Mango
View previous topic :: View next topic  
Author Message
jcc7



Joined: 22 Feb 2004
Posts: 657
Location: Muskogee, OK, USA

PostPosted: Mon Feb 23, 2004 10:26 pm    Post subject: What is DSC? Reply with quote

I'm guessing this is the possible project mentioned in D newsgroup, post 24294

This seems to be a similar idea to DServicesAPI (which might have been abandoned)?

I guess the idea is be like JSP or ASP except powered by D. Sounds like fun.


Last edited by jcc7 on Mon Mar 08, 2004 9:40 am; edited 1 time in total
Back to top
View user's profile Send private message AIM Address
brad
Site Admin


Joined: 22 Feb 2004
Posts: 490
Location: Atlanta, GA USA

PostPosted: Tue Mar 02, 2004 3:38 pm    Post subject: Re: What is JSP? Reply with quote

That's exactly what it is. I think DServicesAPI was abandoned, but I think Kris Bell is working on a servlet engine based in D. If so, it's going to be really cool. I'd be able to redo a huge and slow application we have at work in DSP instead of JSP. And it would be compiled natively Very Happy
_________________
I really like the vest!
Back to top
View user's profile Send private message
jcc7



Joined: 22 Feb 2004
Posts: 657
Location: Muskogee, OK, USA

PostPosted: Thu Mar 11, 2004 12:30 am    Post subject: More news... Reply with quote

Kris has been discussing DSC some more in the official newsgroup, such as post 25333.

Quote:
I've been building a multi-layer IO package for DSC (D Servlet Container)
that's fully buffered and generates zero garbage.

The layers include:

- raw byte-array style I/O

- informal text-oriented Tokenizer I/O with text/binary conversion

- structured binary I/O (directly to/from variables) with optional endian
flipping

- structured text-oriented input with data conversion

- structured class serialization/deserialization framework

It's quite flexible: for example, one can 'read' a line into a Token (using
a LineTokenizer) and then map said Token into any of the other layers for
further slicing. One can mix and match the different layers in pretty much
any way that makes sense. There is no copying of data unless requested by
the app, and no memory allocation other than app-allocated I/O buffers. It
does random-access where the underlying system supports it (not on a
socket), and is intended to support memory-mapped buffers (for *huge*
files). It uses lookahead instead of unget... for those cases that need such
things.

I'm writing this stuff for a high-performance server (in D), so one of the
primary goals is very low runtime overhead (i.e. zero memory allocation). If
anyone's interested, I'll try to get the first major I/O cut out the door
by, say, the end of the month.

- Kris
Back to top
View user's profile Send private message AIM Address
kris



Joined: 27 Mar 2004
Posts: 1494
Location: South Pacific

PostPosted: Sat Mar 27, 2004 1:10 am    Post subject: What is Dsc? Reply with quote

It might be useful for me to clarify what Dsc is, and what it's not:

- Dsc is (will be) a high-performance servlet style HTTP server
- It's written in D, for D servlets
- It includes an IO package (files, sockets, buffers, tokenizers, readers, writers) that can be utilized in isolation from Dsc itself. This package wraps Christopher Miller's excellent socket.d implementation. Big kudos to CM!

- Dsc is not a replacement for ASP, JSP, and their ilk. However, some enterprising soul might provide similar functionality as a (rather sophisticated) servlet. There are a few open-source projects that might be ported.
- There will be no HTTPS support in the first release, unless someone jumps in to write it (hint hint ...)
- Dsc does not stand for "delinquent schizophrenic coyote".
- Initial servlet configuration will be made *in the code*. That is, there will be no external XML style configuration file.

In a nutshell, Dsc is intended to help bootstrap some as-yet-unknown Internet oriented projects.

- Kris
Back to top
View user's profile Send private message
kris



Joined: 27 Mar 2004
Posts: 1494
Location: South Pacific

PostPosted: Thu Apr 15, 2004 9:46 pm    Post subject: Reply with quote

Update:

Dsc has evolved into an umbrella for several related projects. We intend to initially split it out into three subprojects comprised of Dsc.io, Dsc.server, and Dsc.servlet. Dependencies run from right to left: Dsc.servlet requires both Dsc.io and Dsc.server, whilst Dsc.io is standalone.

The names themselves will perhaps change into something a little less formal (such as "kiwi", "mango", and "walnut"), and Dsc will change its original meaning to something along the lines of "D server classes" (or perhaps "delinquent schizophrenic coyote").

Ideas for names, or whether to rename at all, are welcome!

- Kris
Back to top
View user's profile Send private message
kris



Joined: 27 Mar 2004
Posts: 1494
Location: South Pacific

PostPosted: Mon May 03, 2004 9:51 am    Post subject: Reply with quote

kris wrote:
Update:

Dsc has evolved into an umbrella for several related projects. We intend to initially split it out into three subprojects comprised of Dsc.io, Dsc.server, and Dsc.servlet. Dependencies run from right to left: Dsc.servlet requires both Dsc.io and Dsc.server, whilst Dsc.io is standalone.

The names themselves will perhaps change into something a little less formal (such as "kiwi", "mango", and "walnut"), and Dsc will change its original meaning to something along the lines of "D server classes" (or perhaps "delinquent schizophrenic coyote").

Ideas for names, or whether to rename at all, are welcome!

- Kris

So, the umbrella name finally changed to something less snooty. Dsc has become "mango", which has a nice ring to it and is easy to type <g>

Changing import statements is straightforward: simply do a global replace of "dsc." with "mango." and you should be good to go. The make files for linux and Win32 have been updated, as has the scons script. These are packaged up in http://svn.dsource.org/svn/projects/mango/trunk/

I'm happy to say that there's now some preliminary documentation! This will improve over time, and is available online and for download. The online doc is here: http://svn.dsource.org/svn/projects/mango/trunk/doc/html/index.html which also happens to be the project home page. All the doc is included in the downloadable mango.zip
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> Mango All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group