Recent

Author Topic: Your opinions on Lazarus / Free Pascal  (Read 21695 times)

thomasaaron

  • Newbie
  • Posts: 4
Your opinions on Lazarus / Free Pascal
« on: July 09, 2008, 10:47:03 pm »
Hello, all. I'm new here.

I just downloaded Lazarus / Free Pascal, and I like what I see. I'm already an accomplished programmer with Python and Java. However, I'm liking Lazarus / Free Pascal's ability to write once & compile anywhere. So, I'm thinking pretty hard about using it for an application I'm planning. It will be a fairly complex database front end.

Before I make the leap, though, I'd like to get some input on a couple things.

1. Is Lazarus / Free Pascal alive and vital? From what I can tell, it looks like there are a small number of people putting fairly consistent work into it, and forum posts seem a little slow and sparse compared to some other forums I'm used to working with. What can you tell me about the state of Laz/Pascal, it's community, etc? Is it here for the long haul, or is it on the way out?

2. Realisticallly speaking, how much trouble is it to get GUIs to be cross-platform with macs? (I'm working on a Linux box, but I must be able to port to macs without it being an utter nightmare.) I've seen the posts on the wiki about this, but I'd like to get current thoughts on it.

3. What are the greatest remaining weaknesses with Laz/Pascal? Where might I hit walls in designing applications with embedded databases and cross-platform GUIs?

Thank you in advance for your time.

Best,
Tom

Vincent Snijders

  • Administrator
  • Hero Member
  • *
  • Posts: 2660
    • My Lazarus wiki user page
RE: Your opinions on Lazarus / Free Pascal
« Reply #1 on: July 10, 2008, 12:10:14 pm »
I think it is here for the long haul. It is now more than 9 years old and still gaining in popularity.

WibblyTim

  • New member
  • *
  • Posts: 46
    • http://www.wibblytim.co.uk
RE: Your opinions on Lazarus / Free Pascal
« Reply #2 on: July 10, 2008, 02:13:26 pm »
Don't know about Macs, I develop for Windows and Linux. The biggest differences between the GUI's seems to be widget placement. There are subtle differences between the two. I have found it to be a simple matter to rearrange the layout and after that the app compiles without any problems on either Windows or Linux using exactly the same code.

I came from a Delphi background and yes, there is a learning curve involved, but in my opinion it is worth it simply for the freedom to use the cross platform abilities within FPC/Lazarus. I had hoped that Kylix would do the job but Borland just seemed to lose interest. Shame.

bee

  • Sr. Member
  • ****
  • Posts: 357
RE: Your opinions on Lazarus / Free Pascal
« Reply #3 on: July 11, 2008, 08:11:01 am »
> I just downloaded Lazarus / Free Pascal, and I like what I see. I'm already an accomplished programmer with Python and Java. However, I'm liking Lazarus / Free Pascal's ability to write once & compile anywhere. So, I'm thinking pretty hard about using it for an application I'm planning. It will be a fairly complex database front end.

It's interesting to know that a Python/Java programmer could be interested to Pascal. Python and Java is already cross platform, though slightly different with pascal as it goes with write once and run everywhere. Can you share with us, what are the main reasons why you're interested in FPC/Laz since Python and Java is able to do the job? :)

> 1. Is Lazarus / Free Pascal alive and vital? From what I can tell, it looks like there are a small number of people putting fairly consistent work into it, and forum posts seem a little slow and sparse compared to some other forums I'm used to working with. What can you tell me about the state of Laz/Pascal, it's community, etc? Is it here for the long haul, or is it on the way out?

FPC/Laz is alive and will always be. I've been following this project for more than 2 years and it shows very wonderful progress. However, Pascal both as language and community is niche. ;)

> 2. Realisticallly speaking, how much trouble is it to get GUIs to be cross-platform with macs? (I'm working on a Linux box, but I must be able to port to macs without it being an utter nightmare.) I've seen the posts on the wiki about this, but I'd like to get current thoughts on it.

I'm using FPC/Laz on Mac x86 and Linux on daily basis. Sorry, I got no windows machine. :P I'm using Carbon widgetset on Mac (Cocoa is on the way) and gtk2 on Linux. Both widgetsets are fairly stable and very usable. As long as you keep working on RTL and LCL level, there's almost no differences between the two widgetsets. Sometimes you got a little bit "incompatibility" here and there, but this can be solved easily using IFDEFs and you should report the problem to mantis. FPC/Laz does "write once and compile everywhere" very well. :)

> 3. What are the greatest remaining weaknesses with Laz/Pascal? Where might I hit walls in designing applications with embedded databases and cross-platform GUIs?

So far, I see Laz's db-aware components are not quite ready for production. But since I don't need db-aware components because I use my own database-cache classes and display the data on standard controls (no db-aware), it's no problem at all to me. Anyway, it becomes more no problem as I gradually converting my dektop apps to web based apps. Yes, still using pascal (FPC/Laz). :)

HTH.

-Bee-
-Bee-

A long time pascal lover.

thomasaaron

  • Newbie
  • Posts: 4
Your opinions on Lazarus / Free Pascal
« Reply #4 on: July 11, 2008, 03:40:21 pm »
The reason I'm looking into Laz/FPC, even though Python and Java are both cross-platform is this...

Java requires my end users to download the JVM. You and I know that this is easy and no big deal, but I find that a lot of my user base sees this as an inconvenience and some are even scared by it. Go figure.

Same with Python -- you've got to have it installed on your system.

I like that FPC can be compiled for the platforms I'm working with and can be packaged and installed without having to deal with Python or Java installations and versioning.

bee

  • Sr. Member
  • ****
  • Posts: 357
Your opinions on Lazarus / Free Pascal
« Reply #5 on: July 11, 2008, 06:00:54 pm »
> Java requires my end users to download the JVM. You and I know that this is easy and no big deal, but I find that a lot of my user base sees this as an inconvenience and some are even scared by it. Go figure.

Python might has the case, since most common users don't know about it or even ever heard of it. But Java? Hmmm... then how Java can become the mainstream now? Do their users feel the requirement to install JVM inconvenience? It's even installed on common cell phones nowadays. Most common users, usually know about it and could accept if some applications require it.

> I like that FPC can be compiled for the platforms I'm working with and can be packaged and installed without having to deal with Python or Java installations and versioning.

Cross platform programming doesn't only face installation and versioning problems. There are more, e.g. OS versions incompatibility (kernel, libraries, etc), architectures differences (x86, ppc, sparc, etc), widgetsets behavior (gdi, gdi+, gtk1, gtk2, carbon, cocoa, etc). Every language that has cross platform ability would face those same problems. In non native cross platform programming, such as Java, most of those problems are hided by the VM. But in native cross platform programming, you must face them directly. For some developers, those problems are scarier because harder to solve than just Java installation and versioning problems.

I hope you could understand those problems at the first place and be ready to fight against it. I'm afraid you just too excited after you discovered FPC/Laz but not really understood the real problems with native cross platform programming. I'm assuming this because you came from Python and Java background. I don't want you to get disappointed (then blaming FPC/Laz for it) and end up rewriting the whole application using Python/Java.

I'm not trying to scare you or suggesting you to back to Python/Java. I just want to make sure you would choose a right decision for you. If you do sure to use FPC/Laz and ready to go with it... then welcome to the jungle, dude! :D
-Bee-

A long time pascal lover.

theo

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1890
Your opinions on Lazarus / Free Pascal
« Reply #6 on: July 12, 2008, 01:40:42 am »
I agree with what you say bee, mainly not to dissapoint the op.
But it might sound a bit too negative for Lazarus.
I've been thinking long about it: I've found nothing like the perfect solution for cross-platform GUI development.
You can go with Java, .Net, Mono but it may not be the right solution for every case.
When it comes to Lazarus, I think it's a remarkable attempt to reach a goal, namely hiding all platform/widgetset differences behind the LCL, which will probably never be fully possible (even in theory).
Otoh, I don't know any better and easier solution for cross-platform development.
It's in it's nature that e.g. Windows/Delphi people ask for TRichEdit, TWebbrowser or better OLE, Activex blah support and KDE people ask for Kparts etc.
These items are not portable and you have to live with it.

There's always the "Lowest Common Denominator" that Lazarus can cover.
The gaps could be and are filled with native solutions.

Lazarus is not perfect yet, but what is better?

bee

  • Sr. Member
  • ****
  • Posts: 357
Your opinions on Lazarus / Free Pascal
« Reply #7 on: July 12, 2008, 12:21:51 pm »
> I agree with what you say bee, mainly not to dissapoint the op. But it might sound a bit too negative for Lazarus.

That's what I was afraid of. You know that I'm also a happy user of FPC/Laz so I got no intention whatsoever to discourage new comers. I just want him to know the risks and consequences of using FPC/Laz for native cross platform programming.

> It's in it's nature that e.g. Windows/Delphi people ask for TRichEdit, TWebbrowser or better OLE, Activex blah support and KDE people ask for Kparts etc. These items are not portable and you have to live with it.

These are good example of the case. Specially developers that came from managed language e.g. Java, Python, etc, usually would ask about garbage collector. Most developers that don't understand it usually would make black campaign against FPC/Laz, whether on blog, forum, list, etc. That's what I want to prevent. :)

> Lazarus is not perfect yet, but what is better?

For general cross platform solution, I agree with you. But particularly on Object Pascal, FPC/Laz is simply the best! :)
-Bee-

A long time pascal lover.

thomasaaron

  • Newbie
  • Posts: 4
Your opinions on Lazarus / Free Pascal
« Reply #8 on: July 12, 2008, 04:07:38 pm »
Well, this is indeed the kind of discussion I was hoping to see. Very informative.

I'll definitely be taking all of these things into account before making a decision.

Um, what was that about garbage collection? Java and Python handle garbage collection automatically. FPascal does too, right?

theo

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1890
Your opinions on Lazarus / Free Pascal
« Reply #9 on: July 12, 2008, 05:55:24 pm »
Quote from: "thomasaaron"
Java and Python handle garbage collection automatically. FPascal does too, right?


Please read here about Delphi, it's the same for Freepascal.
http://en.wikipedia.org/wiki/Reference_counting#Delphi

thomasaaron

  • Newbie
  • Posts: 4
Your opinions on Lazarus / Free Pascal
« Reply #10 on: July 13, 2008, 01:57:56 am »
OK, thanks. That's good to know. Since I don't have to deal with garbage collection in Java and Python, I would have assumed that Pascal would be the same. I do use a fair number of user-defined types, so that probably would've bitten me.

theo

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1890
Re: Your opinions on Lazarus / Free Pascal
« Reply #11 on: July 13, 2008, 01:29:24 pm »
Quote from: "thomasaaron"
and forum posts seem a little slow and sparse compared to some other forums I'm used to working with.


There is not only this Forum.

There are mailing lists (see Archives):
http://www.mail-archive.com/lazarus@lazarus.freepascal.org/
http://www.mail-archive.com/fpc-devel@lists.freepascal.org/
and more, IRC and several forums in other languages:
German: http://www.lazarusforum.de/
French: http://lazforum-fr.tuxfamily.org/
Portuguese: http://www.lazarusbrasil.org/index.php
                  http://lazaruspascal.codigolivre.org.br/portal.php
Russian: http://freepascal.ru/
and probably more.
The bugtracker: http://bugs.freepascal.org/view_all_bug_page.php
etc.

tech-pro

  • Full Member
  • ***
  • Posts: 173
    • Tech-Pro.net
RE: Re: Your opinions on Lazarus / Free Pascal
« Reply #12 on: July 17, 2008, 02:04:48 pm »
Perhaps there would be more activity in the forum of there was a section for using/programming in Lazarus. Reading the descriptions for the different forum topics, it seems that they are really meant for problems/questions with installing the Lazarus IDE, or for problems/questions to do with LCL. People do ask general programming questions here, but it is not nearly so busy as the Borland Delphi newsgroups, and I suspect that we are supposed to use the Free Pascal lists for topics that are not specificaly Lazarus related. I hate the software the Free Pascal site uses, and would much rather be able to discuss general development issues here, which might then give the impression of a livelier community.
Julian

Troodon

  • Sr. Member
  • ****
  • Posts: 484
RE: Re: Your opinions on Lazarus / Free Pascal
« Reply #13 on: July 29, 2008, 05:42:12 pm »
Lazarus/FPC are absolutelly great!! Documentation is a bit scarce, so some previous experience with Delphi/OOPascal helps, but I can't complain. Keep up the good work! And yes, a section for programming discussions only, as suggested above by tech-pro, would be welcome.

This software is so great that I can't help wondering: if Embarcadero hired the main Lazarus/FPC developers, what would happen to this open-source project?
Lazarus/FPC on Linux

piper62

  • New member
  • *
  • Posts: 41
Your opinions on Lazarus / Free Pascal
« Reply #14 on: July 29, 2008, 07:42:59 pm »
I can recommend the combination of FPC/Lazarus also for larger projects. We develop mainly applications which use complex database backends. As an addition to FPC/Lazarus we have ZEOS as the database abstraction layer.

After a LOT of projects with different development systems I can say that we are VERY satisfied with FPC/Lazarus and ZEOS.

This is really platform independent Rapid Application Development !

The situation with the documentation becomes better more and more.
In Germany we expect within the next weeks two new books about FPC and Lazarus. But I don't know if they plan to publish them also in English?...
And I know that there's work in progress regarding a book about database programming with FPC/Lazarus and ZEOS. And this will be in English primary.