Board index » delphi » STL for Pascal and Object Pascal

STL for Pascal and Object Pascal

Hi All,

Recently I have been working a on rehash of an old problem, that is
generic data structures for Object Pascal. The solution is DSL. The
Delphi standard libraries are a series of generic container and
algorithm libraries written by Arash Partow and made FREE to public
under the QGPL. It was made to fill in the void that some Object
Pascal programmers who have had the pleasure of using C++'s STL may
feel after they return to their mother language.

The currently available containers are:

Vector String Vector Integer Vector Linked List Double Linked List
Hash Table

The currently available algorithms are:

Sort (Quick-Sort, Bubble-Sort, Selection-Sort) Vector Sort String
Vector Integer Vector Sort

For more information or DOWNLOAD of the Delphi Standard Libraries
visit:

http://www.partow.net/dsl.html

Arash Partow

________________________________________________________
Be one who knows what they don't know,
Instead of being one who knows not what they don't know,
Thinking they know everything about all things.
http://www.partow.net

 

Re:STL for Pascal and Object Pascal


Hi Marco,

1.) If you just read the 1st 3 lines of the QGPL license you will see
    that it will meet more than your needs.
    Its open to anything if what you are doing is either
     1. Research
     2. Education
    Other than that you must contact me and inform me of what you will
    be doing. btw there is no need to be a lawyer to understand a GPL
    ;)

2.) STL has the advantage of templating being embedded into the
    C++ language as you said, however please remember that until
    the people that are setting the PASCAL ISO and ANSI begin
    to work together and start taking advice from users and
    compiler manufacturers we will never get the functionality
    needed. However with regards to templating the Pascal
    language syntax is against ambagious states, I think you
    has a compiler engineer should know how much easier that makes
    your job. Am I not right?

Quote
> I managed to download it (web site mumbles about missing javascript
> support) and compile most of it under Free Pascal, with the
> current release version 1.0.6 under FreeBSD. It didn't like the
> virtual constructor in dslalgorithms. (will test with development
> version, and report as bug > otherwise), and the dslvector file seems
> to be missing.

3.) You are right and that has been fixed, I have updated the dsl.zip
    file, DSLVector has been added everything should work A-O-K :D
    I'm not sure what you mean about the java script support thing,
    the menu was written in java script using dhtml, maybe you should
    update your web browers i've tested all the pages on my site with
    netscape, konqueror under linux and IE and netscape under windows
    everything seems fine from my end.

4.) With regards to compatibility, and NG relevance all i can say is
    that OP is very similar, and as stated in the site it can be
    easily ported to any other Object Pascal compiler, the syntax
    will be the same, but most likely people will need to change
    the TObject to whatever else their compilers deem the master
    object from which all other objects are derived from.

Marco I would like to thank-you for your feed back.

Regards

Arash    

________________________________________________________
Be one who knows what they don't know,
Instead of being one who knows not what they don't know,
Thinking they know everything about all things.
http://www.partow.net

Re:STL for Pascal and Object Pascal


Quote
In article <9bed60c5.0302152313.68889...@posting.google.com>, Arash Partow wrote:
> Hi Marco,

> 1.) If you just read the 1st 3 lines of the QGPL license you will see
>     that it will meet more than your needs.
>     Its open to anything if what you are doing is either
>      1. Research
>      2. Education
>     Other than that you must contact me and inform me of what you will
>     be doing. btw there is no need to be a lawyer to understand a GPL
>     ;)

Well, then it is not GPL, which allows commercial use, as long as you
distribute the source of everything.

Quote
> 2.) STL has the advantage of templating being embedded into the
>     C++ language as you said, however please remember that until
>     the people that are setting the PASCAL ISO and ANSI begin
>     to work together and start taking advice from users and
>     compiler manufacturers we will never get the functionality
>     needed. However with regards to templating the Pascal
>     language syntax is against ambagious states, I think you
>     has a compiler engineer should know how much easier that makes
>     your job. Am I not right?

Yes, but I wasn't planning on basing it on C++, it seems that ADA has a much
cleaner way. (which I haven't studied extensively yet)

Quote
>> I managed to download it (web site mumbles about missing javascript
>> support) and compile most of it under Free Pascal, with the
>> current release version 1.0.6 under FreeBSD. It didn't like the
>> virtual constructor in dslalgorithms. (will test with development
>> version, and report as bug > otherwise), and the dslvector file seems
>> to be missing.

> 3.) You are right and that has been fixed, I have updated the dsl.zip
>     file, DSLVector has been added everything should work A-O-K :D
>     I'm not sure what you mean about the java script support thing,
>     the menu was written in java script using dhtml, maybe you should
>     update your web browers i've tested all the pages on my site with
>     netscape, konqueror under linux and IE and netscape under windows
>     everything seems fine from my end.

I used Lynx.

Re:STL for Pascal and Object Pascal


In comp.lang.pascal.delphi.databases Arash Partow <ar...@partow.net> wrote:

Quote
> Recently I have been working a on rehash of an old problem, that is
> generic data structures for Object Pascal. The solution is DSL. The
> Delphi standard libraries are a series of generic container and
> algorithm libraries written by Arash Partow and made FREE to public
> under the QGPL.

Don't make up new licence types unneccesary. It makes it impossible
to use your code. Also have a look at DeCAL.

Stephan Eggermont
Sensus, systems that make sense

Re:STL for Pascal and Object Pascal


Hi Stephan,

Quote
> Don't make up new license types unnecessary. It makes it impossible
> to use your code. Also have a look at DeCAL.

I think it is a necessary thing, my license does not restrict anyone
doing pure open source development. I'm not making a new license to be
a {*word*216}, you can't even really call it new because 95% of it comes
from other licenses which have been accepted by GNU.

The license doesn't restrict you from using DSL to "learn" how to make
generic structures. If once you have learnt you can then implement
your own generic structures, then apply any kind of licensing you want
to them. My hope was that people will learn, people will also assist
me to make the project better maybe even as good as STL for Object
Pascal one day.

This may sound a bit idealistic but thats how I see it.

btw this DeCal you mentioned is this the URL
http://decaldev.sourceforge.net cause I'm not sure what I'm supposed
to be looking for there, was the redirect to DeCAL about the license
or about DSL itself?

Regards

Arash

________________________________________________________
Be one who knows what they don't know,
Instead of being one who knows not what they don't know,
Thinking they know everything about all things.
http://www.partow.net

Re:STL for Pascal and Object Pascal


Arash Partow schrieb:

Quote
> Hi Stephan,

>>Don't make up new license types unnecessary. It makes it impossible
>>to use your code. Also have a look at DeCAL.

> I think it is a necessary thing, my license does not restrict anyone
> doing pure open source development. I'm not making a new license to be
> a {*word*216}, you can't even really call it new because 95% of it comes
> from other licenses which have been accepted by GNU.

But it wouldn't allow commerial use, would it?
Or do you mean that there are only open source programmers all around
the world just now?

Greetings

Markus

Re:STL for Pascal and Object Pascal


Quote
In article <3E50A1E9.4090...@freenet.de>, Markus Humm wrote:
> Arash Partow schrieb:
>> Hi Stephan,

>>>Don't make up new license types unnecessary. It makes it impossible
>>>to use your code. Also have a look at DeCAL.

>> I think it is a necessary thing, my license does not restrict anyone
>> doing pure open source development. I'm not making a new license to be
>> a {*word*216}, you can't even really call it new because 95% of it comes
>> from other licenses which have been accepted by GNU.

> But it wouldn't allow commerial use, would it?
> Or do you mean that there are only open source programmers all around
> the world just now?

Open Source licenses all have possibilities for commercial use. Even the
most stringent one (GPL), allows commercial use as long as the entire app is
open sourced. This license doesn't seem to (at least in his own words)

Re:STL for Pascal and Object Pascal


Quote
In article <9bed60c5.0302161102.9b98...@posting.google.com>, Arash Partow wrote:
> The license doesn't restrict you from using DSL to "learn" how to make
> generic structures. If once you have learnt you can then implement
> your own generic structures, then apply any kind of licensing you want
> to them. My hope was that people will learn, people will also assist
> me to make the project better maybe even as good as STL for Object
> Pascal one day.

> This may sound a bit idealistic but thats how I see it.

> btw this DeCal you mentioned is this the URL
> http://decaldev.sourceforge.net cause I'm not sure what I'm supposed
> to be looking for there, was the redirect to DeCAL about the license
> or about DSL itself?

DSL itself. DeCal is also a generics container library.

Re:STL for Pascal and Object Pascal


In comp.lang.pascal.delphi.databases Arash Partow <ar...@partow.net> wrote:

Quote
> The license doesn't restrict you from using DSL to "learn" how to make
> generic structures. If once you have learnt you can then implement
> your own generic structures, then apply any kind of licensing you want
> to them. My hope was that people will learn, people will also assist
> me to make the project better maybe even as good as STL for Object
> Pascal one day.

They wont. The people who are good enough to help you with it
will not work with your licence. GPL for the real idealists, LGPL
or MPL for those with business ambitions. Especially as DeCAL already
has a better licence.

Stephan Eggermont
Sensus, systems that make sense

Re:STL for Pascal and Object Pascal


Quote
In article <b2qh9p$qt...@news.tue.nl>, Stephan Eggermont wrote:
>> to them. My hope was that people will learn, people will also assist
>> me to make the project better maybe even as good as STL for Object
>> Pascal one day.

> They wont. The people who are good enough to help you with it
> will not work with your licence. GPL for the real idealists, LGPL
> or MPL for those with business ambitions. Especially as DeCAL already
> has a better licence.

True IMHO, specially since the DSL stuff isn't that dramatical (any 1st years
CS can create it).

Re:STL for Pascal and Object Pascal


Arash Partow :

Quote
> 2.) STL has the advantage of templating being embedded into the
>     C++ language as you said, however please remember that until
>     the people that are setting the PASCAL ISO and ANSI begin
>     to work together and start taking advice from users and
>     compiler manufacturers we will never get the functionality
>     needed. However with regards to templating the Pascal
>     language syntax is against ambagious states, I think you
>     has a compiler engineer should know how much easier that makes
>     your job. Am I not right?

Do you mean that templates could bring ambiguity to a language like
Pascal ? In that case, you'd have better to take a look at how it
is defined and works in Ada, which is quite near to Pascal. You find
this feature under the name "genericity" in the first standard
("Ada83"), published exactly 20 years ago. BTW there is a "SGL" for
Ada.
________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!

Re:STL for Pascal and Object Pascal


Quote
In article <b2qh9p$qt...@news.tue.nl>, Stephan Eggermont wrote:
>> to them. My hope was that people will learn, people will also assist
>> me to make the project better maybe even as good as STL for Object
>> Pascal one day.

> They wont. The people who are good enough to help you with it
> will not work with your licence. GPL for the real idealists, LGPL
> or MPL for those with business ambitions. Especially as DeCAL already
> has a better licence.

True IMHO, specially since the DSL stuff isn't that dramatical (any 1st years
CS can create it).

Re:STL for Pascal and Object Pascal


Quote
In article <9bed60c5.0302161147.483bb...@posting.google.com>, Arash Partow wrote:
> Hi Maarten,

>> I think he means that perhaps you should try to make your website
>> accessible to browsers that only do HTML.

>> Some people don't do JavaScript because they don't *WANT* it.

> This is the kind of attitude that causes conflict in the world. People
> instead of tolerating one another just shut-up shop get on their high
> horse and straight out say no to one thing or another on the grounds
> of principle. THAT IS JUST PLAIN CRAZY!  When you have a browser that
> supports a technology in this case javascript why would you want to
> exclude it?

Because it throws up an unnecessary barrier for those who don't support it.

Quote
>  I don't think you can name a "main-stream" web browser with the exclusion
> of lynx that does not support javascript.

Yes, but a lot of people turn it off out of security reasons. (pop-ups etc)

Quote
> I agree there are some security issues with javascripts because some
> of them can be hostile but then again, I don't know of any "main-
> stream" web browsers that do not also support levels of security with
> regards to what kinds of java scripts are run on one's machine.

Which are totally inadequate, since most scripting vulnerabilities don't behave
along those lines.

Quote
> On the browsers that I tested that had java scripts "turned off" all
> it said was this page could not display java scripts. hence the
> browser would not show the side menu which is irrelevent to gaining
> information about DSL it was there if people wanted to navigate the rest
> of the site (which btw is still under MAJOR construction),

The viewer is not the designer. He can not know all this without being a
psychic. For all he knows he could have missed the major point of the site,
because the site gives an error warning!

Re:STL for Pascal and Object Pascal


In comp.lang.pascal.delphi.databases Arash Partow <ar...@partow.net> wrote:

Quote
> The license doesn't restrict you from using DSL to "learn" how to make
> generic structures. If once you have learnt you can then implement
> your own generic structures, then apply any kind of licensing you want
> to them. My hope was that people will learn, people will also assist
> me to make the project better maybe even as good as STL for Object
> Pascal one day.

They wont. The people who are good enough to help you with it
will not work with your licence. GPL for the real idealists, LGPL
or MPL for those with business ambitions. Especially as DeCAL already
has a better licence.

Stephan Eggermont
Sensus, systems that make sense

Go to page: [1] [2]

Other Threads