Recent

Author Topic: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…  (Read 47323 times)

bee

  • Sr. Member
  • ****
  • Posts: 393
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #15 on: October 01, 2017, 02:31:48 am »
I am on the neutral side. I do not hate nor think Delphi is bad. Yes, I'm sad that I'm not listed in their target customer range, but that doesn't mean I should blame them. Everyone has their business strategy and target customers. I want to buy iMac but cannot afford it, should I blame Apple that set the price too high?
If you read my text carefully, actually there's nobody hates or blames anybody or anything. I'm just trying to put everything in its own place and context. Delphi as a product is actually a good product, we –Pascal programmers– owe many modern Pascal features to Delphi. If you can afford it, it could be the best development tool for you. However, if you can't afford it or you're not in its target market, you should not complaining and whining over Embarcadero business strategy. You should look for another alternative which it could be Lazarus IDE (with FPC) or another language. Especially for teachers, don't let yourself and your pupils to be depended upon commercial and proprietary product such as Delphi while there are many equal or better alternatives.
-Bee-

A long time pascal lover.

Akira1364

  • Hero Member
  • *****
  • Posts: 566
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #16 on: October 01, 2017, 03:04:21 am »
It amounts to this, basically: Embarcadero have progressively dug themselves into an ever-deepening hole over the past 10-15 years or so by simply being deeply unrealistic about their product and utterly failing to keep up with market/technological trends.

Delphi, even at the height of its popularity, never had anywhere close to the market share that Embarcadero will try to convince you it did/does. It was just never that popular. Pascal is not that widely used of a language overall, globally speaking. Delph has also historically been rather far from what most developers are looking for in recent years: high levels of cross-platform compatibility are essential and widely desired these days, and Delphi has only very very recently begun to have them. (Which of course is far too late.) For whatever reason, Embarcadero honestly seemed to believe for a very long time that their 32-bit-only Windows-only IDE was somehow going to carry their entire organization forever.

So what all of that adds up to is a company that almost nobody has ever heard of, with a small, rapidly dwindling customer base that consists largely of aging long-time license holders, that basically has no choice other than to charge absurd amounts for those licenses to make up for it.

(I say all of that as someone who uses Delphi in a professional context quite often to maintain legacy software at the company I work for, by the way...)
« Last Edit: October 02, 2017, 04:15:48 am by Akira1364 »

lazjump

  • Jr. Member
  • **
  • Posts: 61
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #17 on: October 01, 2017, 05:11:34 am »
If one do programming for Windows, and is a fan of "free as free beer" instead of "free as free speech" then Delphi Tokyo Starter should be considered.

Add Zeos for database connectivity and Fortes Report for reporting. And also some other useful free component packs like Konopka VCL Controls (which gives you easy to use page control with close buttons) available via the GetIt Package Manager.

You can even install GExperts and CNPack too.

I had been away from professional programming jobs for some months (last time played with VS), and now someone pull me back to Windows programming again with the setup above. I think I can go quite far with it. The biggest thing I missed is Ctrl-Shift-C and Ctrl-Shift Up/Down.

I'd consider web programming in the future with Delphi Tokyo Starter + UniGUI. They work together well in my experiments.
I thought Delphi was expensive until I learned the price of ExtJS

bee

  • Sr. Member
  • ****
  • Posts: 393
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #18 on: October 01, 2017, 06:46:52 am »
I had been away from professional programming jobs for some months (last time played with VS), and now someone pull me back to Windows programming again with the setup above. I think I can go quite far with it.
Indeed. Delphi's strongest advantage is Windows desktop application programming. However it's now a stagnant market. Every app today goes to the web and/or mobile. And the free version of Delphi doesn't provide that.

I'd consider web programming in the future with Delphi Tokyo Starter + UniGUI. They work together well in my experiments.
Yes, web programming with Delphi is the future. I've heard that since like over 10 years ago. :D

Fortunately, I had moved to FPC about that time and did web programming since then. So, web programming using Pascal language isn't actually the future because you could have done it years ago using FPC.

Do you know that you can use Pascal to create front-end web app? You got two options:
1. Smart Pascal (commercial but cheap)
2. FPC's pas2js (free open source)
-Bee-

A long time pascal lover.

lazjump

  • Jr. Member
  • **
  • Posts: 61
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #19 on: October 01, 2017, 08:56:37 am »
Hi bee,

I believe you when you say that web programming had been done with FPC long time ago. Years ago I had seen your work using ExtPascal too.

I am aware of the options you mentioned. But I'm afraid that none of them have the conveniences UniGUI offers; that you don't have to deal with low level intricacies of web programming. And you create applications in the same way like the good old Delphi. It is like I've gotten used to using washing machine, I don't want to wash clothes manually again  :D

But the cheapest UniGUI is $395; not cheap but somewhat more affordable than Delphi Professional with Intraweb Personal included.

I'm dreaming of UniGUI Starter Edition that is free, with the limitation 15 concurrent sessions and standalone server deployment only.

Well... who knows Farshad is reading and turn this into reality  :D
I thought Delphi was expensive until I learned the price of ExtJS

bee

  • Sr. Member
  • ****
  • Posts: 393
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #20 on: October 01, 2017, 01:46:56 pm »
I believe you when you say that web programming had been done with FPC long time ago. Years ago I had seen your work using ExtPascal too.
It seems you've been with this community for quite a while, though your posting count doesn't really reflect that. You know… ExtPascal is like ages ago. I haven't used it anymore, that's why I left the project.

I am aware of the options you mentioned. But I'm afraid that none of them have the conveniences UniGUI offers; that you don't have to deal with low level intricacies of web programming. And you create applications in the same way like the good old Delphi. It is like I've gotten used to using washing machine, I don't want to wash clothes manually again :D
I used to think like that. It's also the reason I joined the ExtPascal project. Until the smartphones came along, especially since the iPhone rising, I found that such UI paradigm (desktop-like interface) doesn't work on mobile devices.

Well... who knows Farshad is reading and turn this into reality  :D
Well… everybody may a have a dream. Good luck! :D
-Bee-

A long time pascal lover.

Zath

  • Sr. Member
  • ****
  • Posts: 391
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #21 on: October 01, 2017, 06:37:45 pm »
First time I've heard of UniGui, it looks interesting but a 3 minute time out on the trial version is a bit ridiculous.

snorkel

  • Hero Member
  • *****
  • Posts: 817
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #22 on: October 03, 2017, 11:27:50 pm »
I stopped using Delphi back in 2012, have not used it since and Lazarus has been able to do everything I needed.

I don't recommend Delphi to anyone anymore and instead point them to Lazarus and FPC :-)

Long Live Lazarus :-)
***Snorkel***
If I forget, I always use the latest stable 32bit version of Lazarus and FPC. At the time of this signature that is Laz 3.0RC2 and FPC 3.2.2
OS: Windows 10 64 bit

Mr.Madguy

  • Hero Member
  • *****
  • Posts: 881
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #23 on: October 04, 2017, 07:31:43 am »
I started to make small side projects in FP, but I still can't port my main project to FP+Lazarus, cuz FP is still isn't fully Delphi2009-compatible. It has taken too much time to migrate to using new powerful features, like generics and anonymous methods, so I just can't degrade back to Delphi 7 era again.
Is it healthy for project not to have regular stable releases?
Just for fun: Code::Blocks, GCC 13 and DOS - is it possible?

mangakissa

  • Hero Member
  • *****
  • Posts: 1131
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #24 on: October 04, 2017, 08:40:26 am »
That's still an issue. Hopefully 1.8 will give the solution.
Lazarus 2.06 (64b) / FPC 3.0.4 / Windows 10
stucked on Delphi 10.3.1

bee

  • Sr. Member
  • ****
  • Posts: 393
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #25 on: October 04, 2017, 10:19:09 am »
I started to make small side projects in FP, but I still can't port my main project to FP+Lazarus, cuz FP is still isn't fully Delphi2009-compatible. It has taken too much time to migrate to using new powerful features, like generics and anonymous methods, so I just can't degrade back to Delphi 7 era again.
It goes both ways actually. Delphi has something FPC doesn't have, as FPC also has something Delphi doesn't have. For example, I've been wanting Linux support from Delphi since 2007, just to be fulfilled at 2017. It's now too late to convert tens of my web apps already running well on my Linux servers, since 2007. Plus thousands of dollar I have to pay for Delphi. As I've said, nothing is perfect. And our miles may vary.

AFAIK, generics had been available in FPC before Delphi, albeit using different syntax. Anonymous methods has been a topic for long and hot debate in FPC forum and mailing list. It raises up again and again every once a while. Everybody seems to want it but nobody really works on it. Well, that's FPC… it offers something more but lack of something else. But who knows if tomorrow someone finds FPC and starting to work on a feature you need. However, my apps can live well without both of them.

One thing about open source project, especially voluntary-based open source project, and in particular FPC project… you can't just request for something and the developers will just provide it for you right away. No, FPC project doesn't work that way. If you need a feature –or a bug to be fixed– and nobody does it for you, for whatever reasons, then you gotta do it by yourself, or hire someone to do it for you. Unlike Delphi, you have all the FPC's source codes and the right to modify it for your own purpose. That can be good or bad, depends on how you look at it.
-Bee-

A long time pascal lover.

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 12706
  • FPC developer.
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #26 on: October 04, 2017, 11:28:51 am »
I started to make small side projects in FP, but I still can't port my main project to FP+Lazarus, cuz FP is still isn't fully Delphi2009-compatible. It has taken too much time to migrate to using new powerful features, like generics and anonymous methods, so I just can't degrade back to Delphi 7 era again.

3.0 generics are better than D2009-DXE level.   While doing some projects with lazarus I used 3.0 with an older version of the generics libs now merged into trunk quite happily. I don't use anonymous methods though, also not in Delphi (at home D2009, at work DXE10).

P.s. did you guys also get a special offer this week from Idera? I could /upgrade/ (from XE7) to the latest and greatest delphi pro for the diminutive sum of Eur 1200, which already included a 30% discount.


Mr.Madguy

  • Hero Member
  • *****
  • Posts: 881
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #27 on: October 04, 2017, 12:25:39 pm »
One thing about open source project, especially voluntary-based open source project, and in particular FPC project… you can't just request for something and the developers will just provide it for you right away. No, FPC project doesn't work that way. If you need a feature –or a bug to be fixed– and nobody does it for you, for whatever reasons, then you gotta do it by yourself, or hire someone to do it for you. Unlike Delphi, you have all the FPC's source codes and the right to modify it for your own purpose. That can be good or bad, depends on how you look at it.
I guess, biggest problem - is so called "variable capture". It needs complete overhaul of variable handling code. I really tried to do it myself, but FPC's code is too messy and it's really hard to understand, how to implement anything without some help. When I asked for help, nobody helped me.
3.0 generics are better than D2009-DXE level.   While doing some projects with lazarus I used 3.0 with an older version of the generics libs now merged into trunk quite happily. I don't use anonymous methods though, also not in Delphi (at home D2009, at work DXE10).
I don't know, I have problems with code, like this one:
Code: Pascal  [Select][+][-]
  1.   generic TPair<X, Y> = record
  2.   end;
  3.   generic TObject1<T> = class
  4.   end;
  5.   generic TObject2<X, Y> = class(TObject1<TPair<X, Y>>)
  6.   end;  
  7.  
Compiler says, that I need to specialize them first.

This clunky syntax doesn't work either, while, I guess, it should:
Code: Pascal  [Select][+][-]
  1.   generic TPair<X, Y> = record
  2.   end;
  3.   generic TObject1<T> = class
  4.   end;
  5.   generic TObject2<X, Y> = class(specialize TObject1<specialize TPair<X, Y>>)
  6.   end;  
  7.  
I can't inherit class from symbol, that isn't declared yet, and I can't specialize generic outside of class declaration - it's dead lock, you know.

While in Delphi this code works perfectly:
Code: Pascal  [Select][+][-]
  1.   TPair<X, Y> = record
  2.   end;
  3.   TObject1<T> = class
  4.   end;
  5.   TObject2<X, Y> = class(TObject1<TPair<X, Y>>)
  6.   end;
  7.  
« Last Edit: October 04, 2017, 12:48:35 pm by Mr.Madguy »
Is it healthy for project not to have regular stable releases?
Just for fun: Code::Blocks, GCC 13 and DOS - is it possible?

Thaddy

  • Hero Member
  • *****
  • Posts: 18764
  • To Europe: simply sell USA bonds: dollar collapses
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #28 on: October 04, 2017, 01:23:15 pm »
Quote
While in Delphi this code works perfectly:
What are you smoking? >:D >:D >:D
Code: Pascal  [Select][+][-]
  1. program program1;
  2. {$ifdef fpc}{$mode delphi}{$H+}{$endif}
  3. type
  4. TPair<X, Y> = record
  5.   end;
  6.   TObject1<T> = class
  7.   end;
  8.   TObject2<X, Y> = class(TObject1<TPair<X, Y>>)
  9.   end;
  10. begin end.

Simply compiles....
« Last Edit: October 04, 2017, 01:25:04 pm by Thaddy »
If Europe sells their USA bonds the USD will collapse. Europe can affort that given average state debts. The USA can't affort that. Just an advice...

balazsszekely

  • Guest
Re: Avoid Delphi and use Free Pascal + Lazarus IDE, unless…
« Reply #29 on: October 04, 2017, 01:50:06 pm »
@Thaddy
Quote
What are you smoking? >:D >:D >:D
He's smoking FPC 3.0.0 or FPC 3.0.2 or FPC 3.0.4 .

Quote
Simply compiles....
Yes, with FPC trunk it does compile.

 

TinyPortal © 2005-2018