Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2004-01

Free Pascal - general commet / suggestions

11 messages · 6 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Paschal Mushubi

Hi
I have been looking for a language to replace my reliance on C++ and FP seems like it could fit the bill but I have a few questions for you veterans.
I develop in C++ not because I love it, am not even that good at it, but because I can find free easy to use
libraries to accomplish a lot of what I need to do which is usually developing Oracle
database apps.
Unfortunately I can't find the libraries (units) I am looking for. Has someone tried to mimic the STL for example?
If I knew FP well I could write a unit that does this http://otl.sourceforge.net/otl3.htm#toc for example. or develop a generic database access layer like Perl DBI. Shouldn't effort be put in developing Internet aware libraries targeting the web instead of the traditional desktop? Any Internet site developed in FPC. That wouldn't be a bad advertisement.
I have browsed the site http://www.freepascal.org but I get the impression that a lot is going on that is not well directed effort in my opinion. Do you really need to support all these platforms? Including DOS for God's sake. Looks like everyone and their brother is trying to develop yet another IDE. Sorry if I sound negative but I really would love to see FP succeed because it is a beautiful language. You get ease of use without sacrificing power. Produce more units to accomplish modern computing tasks.
How can I help? Let me know if you need someone to test your database access layer or may be a hash_map implementation.
Not another IDE please, or another Windows rich edit control :-) Or may be these units exist I just haven't searched hard enough. If so please give me directions.

Thanks.

p. mushubi

Alan Mead
to Paschal Mushubi
--- Paschal Mushubi wrote 10 lines
because I can find free easy to use libraries to accomplish a lot of what I need to do which is usually developing Oracle database apps. Unfortunately I can't find the libraries (units) I am looking for. Has someone tried to mimic the STL for example? If I knew FP well I could write a unit that does this http://otl.sourceforge.net/otl3.htm#toc for example. or develop a generic database access layer like Perl DBI.

I agree. FPC is indeed a great language and I enjoy using it when I need complex data types or fast execution (e.g., statistical estimation). But it's not the only tool in existance. Perl has a clear advantage in terms of available software, including the DBI. I doubt that FPC will ever catch up. But no matter, I just use Perl when it's a better choice.

I would hazard a guess that the installed FPC base using Oracle is miniscule. If you are earnest in wanting to write such a library, this list will be happy to help you with the FPC issues you might encounter. We've had previous discussions about SQL topics. In abstract, I'd be interested in this but I wouldn't have any way to test such code since the requirements to run even a demo version of Oracle are slightly beyond me.

Show quoted text 6 lines
Shouldn't effort be put in developing Internet aware libraries targeting the web instead of the traditional desktop? Any Internet site developed in FPC. That wouldn't be a bad advertisement. I have browsed the site http://www.freepascal.org but I get the

Sometimes advertisement is subtle. I believe the FPC website IS powered by FPC; FPC is certainly available for CGI and other web applications and if you have a specific need that doesn't seem to be met this list may well be able to point you towards a solution.

That said, I don't think the FPC community feels that chasing current hype like .NET is a high priority. Established and important technologies appear because someone (like you or I) needs to use them and decides to use them with FPC.

-Alan

__________________________________
Do you Yahoo!?
Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes http://hotjobs.sweepstakes.yahoo.com/signingbonus

Michael Van Canneyt
to Paschal Mushubi: Hi I have been looking for a language to replace my reliance on C++ and FP seems like it…
Paschal Mushubi wrote 16 lines
Hi I have been looking for a language to replace my reliance on C++ and FP seems like it could fit the bill but I have a few questions for you veterans. I develop in C++ not because I love it, am not even that good at it, but because I can find free easy to use libraries to accomplish a lot of what I need to do which is usually developing Oracle database apps. Unfortunately I can't find the libraries (units) I am looking for. Has someone tried to mimic the STL for example? If I knew FP well I could write a unit that does this http://otl.sourceforge.net/otl3.htm#toc for example. or develop a generic database access layer like Perl DBI. Shouldn't effort be put in developing Internet aware libraries targeting the web instead of the traditional desktop? Any Internet site developed in FPC. That wouldn't be a bad advertisement.

Such things exist already. The 'DBI' exists and is called TDataset, after Delphi's database handling classes.

Concerning CGI, the FCL contains the 'cgiapplication' class;
it provides most of what you need to develop a CGI application.

The FPC team has a test suite which is run daily, with results stored in MySQL. A CGI application displaying the results of the tests is written with the cgiapp class. You can check out the sources in CVS. (projects/testsuite)

The contributed units and bug reporting stuff are also scheduled for rewriting in FPC (currently they're in PHP).

I have browsed the site http://www.freepascal.org but I get the impression that a lot is going on that is not well directed effort in my opinion. Do you really need to support all these platforms?

Yes, this is the advantage of FPC over e.g. Delphi.

Including DOS for God's sake. Looks like everyone and their brother is trying to develop yet another IDE.

The Lazarus team is doing a great job. I would say that this is the editor of choice for FPC if you work on Linux.

If you feel like helping, you may consider writing a TDataset descendent for Oracle. The C bindings are somewhere in the packages.

Michael.

Marco van de Voort
to Paschal Mushubi: Hi I have been looking for a language to replace my reliance on C++ and FP seems like it…
Show quoted text 7 lines
I have been looking for a language to replace my reliance on C++ and FP seems like it could fit the bill but I have a few questions for you veterans. I develop in C++ not because I love it, am not even that good at it, but because I can find free easy to use libraries to accomplish a lot of what I need to do which is usually developing Oracle database apps. Unfortunately I can't find the libraries (units) I am looking for. Has someone tried to mimic the STL for example?

There is a Delphi package called Decal. However there is not much interest in it.

Show quoted text 5 lines
If I knew FP well I could write a unit that does this http://otl.sourceforge.net/otl3.htm#toc for example. or develop a generic database access layer like Perl DBI. Shouldn't effort be put in developing Internet aware libraries targeting the web instead of the traditional desktop? Any Internet site developed in FPC.

We are still searching for a webmaster:-)

That wouldn't be a bad advertisement. I have browsed the site http://www.freepascal.org but I get the impression that a lot is going on that is not well directed effort in my opinion.

What is "well directed" in your opinion? Compared to what?

Do you really need to support all these platforms?

As far as I'm concerned, we could dump Linux, OS/2 and Windows, since I don't or hardly use them :-)

Nearly any subsystem is created a maintained by a member or user that is interested in it.

So in theory, what FPC provides exactly matches the needs of the active developers and users.

There are some practical difference though, like holes left behind important members that had no more time to work on FPC due to job changes etc.

Including DOS for God's sake.

(seriously again)

Dos can be quite important for a smaller compiler suite. The installed base, (specially if you included embedded devices that run on it) is still quite large, and the big guys don't support it any more.

OS/2 is the same story I think, but a magnitude smaller. But both OS/2 and Dos are maintained by people.

Looks like everyone and their brother is trying to develop yet another IDE.

There are three initiatives that are linked with FPC from their beginning:
- the standard textmode IDE (TP/BP style).
- Lazarus, the RAD.
- Sebastian Guenthers efforts (fp<x> Kassandra)

Lazarus is making good progress.
The FPC IDE is without maintainer.

Sorry if I sound negative but I really would love to see FP succeed because it is a beautiful language.

The answer is very simple: work on it. Do work for an extended period of time. The limitation is not in direction, or making decisions, but in workers.

You get ease of use without sacrificing power.

Well, that is indeed also my reason for choosing FPC.

Produce more units to accomplish modern computing tasks. How can I help?

What we (IMHO) currently most need:

jobs that only work out when somebody does it for a longer period:

- maintainer/manager of the packages
- maintainer for the textmode IDE and related terminal independant subsystems. (video/keyboard units)
- coordinate extension addition of major systems in the classes library (like more TDataSets, fpimage etc etc)
- work on Lazarus.

jobs that all serious interested developers could pick up

- creator of new packages and lazarus components.
- making classes library extensions
- take an arbitrary package and start maintaining/bugfixing/updating it.
- make demo programs. Most asked are a series of simple crossplatform socket examples.

Besides this, we can always use 5 hardcore compiler developers. However this is not for the faint of heart, and it takes at least a manyear to get up to speed.

Paschal Mushubi
to Michael Van Canneyt: Such things exist already. The 'DBI' exists and is called TDataset, after Delphi's…
Michael Van Canneyt wrote 8 lines
Such things exist already. The 'DBI' exists and is called TDataset, after Delphi's database handling classes. Concerning CGI, the FCL contains the 'cgiapplication' class; it provides most of what you need to develop a CGI application.

I am encouraged by responses to my comments.
I will definitely follow up some of the tips,
in particular, the database access layer TDataset and the cgiapplication class examples to begin with.
Thanks.

p. mushubi

Florian Klaempfl
to Paschal Mushubi: Hi I have been looking for a language to replace my reliance on C++ and FP seems like it…
Paschal Mushubi wrote
I have browsed the site http://www.freepascal.org but I get the impression that a lot is going on that is not well directed effort in my opinion. Do you really need to support all these platforms? Including DOS for God's sake.

FPC developement is done by it's community and everybody is free to do what he wants as long as it's "compatible" with the other work done on FPC. So even if somebody wants to do a C64 cross compiler we won't stop him ;)

Looks like everyone and their brother is trying to develop yet another IDE.

There are two "official" IDEs: fp and lazarus. fp is a text mode/console IDE while lazatus is an IDE for GUI systems.

Paschal Mushubi
to Florian Klaempfl
Florian Klaempfl wrote 6 lines
FPC developement is done by it's community and everybody is free to do what he wants as long as it's "compatible" with the other work done on FPC. So even if somebody wants to do a C64 cross compiler we won't stop him ;)

I get it. I just thought given limited resources (time being one of the precious one) an individual working on the compiler could do a better job if they focused on one or two popular platforms and make FPC really shine. But I guess I don't know enogh about the process to make this comment.
But this sort of thing is common accross most open source projects. People work on what interests them and that is fair enough. What interests one may be useless to a lot others. To me FPC on Linux and Windows (and perhaps Solaris) is all I care about. More usefull / well tested libraries on those platforms would be great. Unfortunately you don't get the libraries tested unless there is a sizable number of users of the library.Chicken and egg problem sort of.

Marco van de Voort
to Paschal Mushubi
Show quoted text 9 lines
> FPC developement is done by it's community and everybody is free to do > what he wants as long as it's "compatible" with the other work done on > FPC. So even if somebody wants to do a C64 cross compiler we won't > stop him ;) > I get it. I just thought given limited resources (time being one of the precious one) an individual working on the compiler could do a better job if they focused on one or two popular platforms and make FPC really shine.

In that case, it would be more logical to drop the most used platforms, and focus on platforms where one wouldn't have to compete for users with commercial vendors.

So since Delphi supports Windows and Linux, it would make the most sense to pick up the platforms that are behind that one in popularity: Solaris, *BSD and Mac OS X.

on those platforms would be great. Unfortunately you don't get the libraries tested unless there is a sizable number of users of the library.Chicken and egg problem sort of.

The only reason that FPC can really expand and put more effort into the package department (libraries + headers) is when more users become active, and maintain packages long term.

Otherwise most packages will only be expanded/created if an interested developer actually needs them. (and after that e.g. linger for a while)

Jonas Maebe
to Paschal Mushubi: I get it. I just thought given limited resources (time being one of the precious one) an…
Paschal Mushubi wrote
I get it. I just thought given limited resources (time being one of the precious one) an individual working on the compiler could do a better job if they focused on one or two popular platforms and make FPC really shine.

On the other hand, having so many platforms to support also keeps the code cleaner. It discourages the use of platform-specific hacks (as you need generic code anyway), and different processors/OS'es stresstest different parts of the compiler.

Jonas

Paschal Mushubi
to Jonas Maebe
Jonas Maebe wrote 6 lines
On the other hand, having so many platforms to support also keeps the code cleaner. It discourages the use of platform-specific hacks (as you need generic code anyway), and different processors/OS'es stresstest different parts of the compiler.

Actually I don't mind "hacks" that take advantage of specific features of the platform. On Windows I would rather compile my production code using Visual C++ rather than g++ using Cygwin although g++ is more standards compliant ("cleaner" ) than Visual C++. Cygwin applications don't run as fast as native Windows apps for obvious reasons. On Linux I keep away from Wine applications. They perform poorly because they don't take advantage of Linux's
specific features.
BTW anyone with cycles (and ability of course) to test how FPC would stack up compared to other 9 langauges
tested here: http://www.osnews.com/story.php?news_id=5602&page=3..

p. mushubi.

Jonas Maebe
to Paschal Mushubi
Paschal Mushubi wrote 9 lines
Actually I don't mind "hacks" that take advantage of specific features of the platform. On Windows I would rather compile my production code using Visual C++ rather than g++ using Cygwin although g++ is more standards compliant ("cleaner" ) than Visual C++. Cygwin applications don't run as fast as native Windows apps for obvious reasons. On Linux I keep away from Wine applications. They perform poorly because they don't take advantage of Linux's specific features.

Compilers in general don't take advantage of OS-specific features, that's mainly the domain of the run time library. Our win32 and linux rtl's both use the underlying OS-features pretty well, I think. Further, the main reason VC++ is so much better g++, is that it has a much better code generator and optimizer than g++ (and FPC). I doubt it has very much to do with win32-specific optimizations or features. It may have to do with the fact that VC++ x86-only (while g++ supports pretty much every processor out there), but that's not a guarantee: FPC did not generate better code when it was still x86-only compared to now.

You could argue that if all effort put into making FPC more platform-independent was put in x86-specific work, it would now be much better for x86 than it is at the momement. However, I'm not certain of that. Because we wanted to support more architectures, we have converted the code generator from messy procedural code to an extensible OOP design. This has not only made porting much easier, but also made the code generator much easier to understand, extend and you can still add cpu-specific performance enhancements without the need for hacks (you just override some method). And you always have (after a while) well-tested generic code to fall back on and to test against.

Jonas