Recent

Author Topic: whats the diff between FreePascal and Lazarus ?  (Read 8217 times)

vmars316

  • New Member
  • *
  • Posts: 19
whats the diff between FreePascal and Lazarus ?
« on: April 15, 2014, 07:52:04 pm »
Hello & Thanks :
Pls, whats the diff between
FreePascal  and  Lazarus ?
..vm

zeljko

  • Hero Member
  • *****
  • Posts: 1079
    • http://wiki.lazarus.freepascal.org/User:Zeljan
Re: whats the diff between FreePascal and Lazarus ?
« Reply #1 on: April 15, 2014, 07:56:50 pm »
You're registered for almost 2 yrs at this forum, you have 18 posts and you still don't know difference ?
FreePascal (fpc) is compiler, while Lazarus is RAD IDE and it uses fpc as compiler.

engkin

  • Hero Member
  • *****
  • Posts: 2513
Re: whats the diff between FreePascal and Lazarus ?
« Reply #2 on: April 15, 2014, 08:08:09 pm »
What about RTL, FCL, and LCL?  :P

howardpc

  • Hero Member
  • *****
  • Posts: 3176
Re: whats the diff between FreePascal and Lazarus ?
« Reply #3 on: April 16, 2014, 12:30:43 am »
Broadly speaking the RTL and FCL have been developed by FreePascal developers and are part of the compiler domain, and the LCL has been developed by Lazarus developers to support both the Lazarus IDE and RAD in general - but of course there is overlap, and cross-fertilisation both ways.

x2nie

  • Sr. Member
  • ****
  • Posts: 478
  • Impossible=I don't know the way
    • impossible is nothing - www.x2nie.com
Re: whats the diff between FreePascal and Lazarus ?
« Reply #4 on: April 16, 2014, 07:31:47 am »
Hi !
I can confirm that you can create a GUI (windowed) application by only using freepascal stuff (RTL+FCL). In fact, it was what fpGUI and MSGUI does.
By using LCL stuff (TControl, TWinControl, TForm, TPanel etc), everything would be easier and faster.


Without LCL, you have to create all widget (Graphical User Interface) by your self.
This way, your application will only requires free pascal compiler (ppc*.exe) and freepascal stuff (RTL+FCL).
You will need to build your own widgetset inherited from TComponent (not TControl due TControl is defined in LCL).
You need a proof ? this one is a proof: http://www.turbocontrol.com/easyfpgui.htm




The best of I can confirm is that we can :
  • Create a non-LCL application using Lazarus IDE
  • Design the visual / non-visual component of that non-LCL application using Lazarus
  • Compiling non-LCL application using Lazarus into executable and libraries (*.exe, *.dll, *.so)
  • Debugging..
  • and Running non-LCL application inside Lazarus.
  • Install non-LCL visual component through Lazarus's Component Palette
  • Drag-drop in non-LCL form designer as easy as you could do with your daily TForm
  • (almost) Do whatever you usually do with LCL, all done by still using : Lazarus !
  • ...
  • See below attachment (only if you are logged in to Lazarus Forum)
    The pictures are real screenshoot, not a mockup.


Thanks to Lazarus & FreePascal teams (expecially to Mattias Gaertner) who make it happens.
Above possibility has been opened via his demo: \Lazarus\examples\designnonlcl
And I continue this demo to create another widgetset (experimental).

You might want to ask this question: "What's diff between Lazarus & LCL" ?
In my perspective, Lazarus is all-in-one you need, included Integrated Development Environment.
LCL is Lazarus's heart, brain, blood and Freepascal is it's back bone.
However, it was too hard to replace LCL with non-LCL in the speed development, maintainability, and stability. I create non-LCL application is for fun. :) (y)
« Last Edit: April 16, 2014, 07:42:13 am by x2nie »
When you were logged in, you can see attachments.
Lazarus Trunk @ Windows7 64bit, XP 32bit, Debian under VirtualMachine

zeljko

  • Hero Member
  • *****
  • Posts: 1079
    • http://wiki.lazarus.freepascal.org/User:Zeljan
Re: whats the diff between FreePascal and Lazarus ?
« Reply #5 on: April 16, 2014, 11:39:30 am »
@x2nie, no that won't happen in lazarus. fpgui is widgetset like any other so should be implemented like others , so TButton = TButton in all widgetsets.

x2nie

  • Sr. Member
  • ****
  • Posts: 478
  • Impossible=I don't know the way
    • impossible is nothing - www.x2nie.com
Re: whats the diff between FreePascal and Lazarus ?
« Reply #6 on: April 16, 2014, 12:53:49 pm »

@x2nie, no that won't happen in lazarus. fpgui is widgetset like any other so should be implemented like others , so TButton = TButton in all widgetsets.




You are right when refer to "LCL-fpGUI" which is another widgetset target supported by Lazarus.
You are right when refer to "fpGUI" located in C:\lazarus\lcl\interfaces\fpgui




You are wrong when don't believe that there are many widgetset that only requires FCL,
included "fpGUI". [size=78%]So, [/size]dont be confused about fpGUI and LCL-FPGUI[size=78%], both refer to one widgetset but have some degree differential.[/size]
LCL-fpGUI is in alpha stage. while another one has staable release 1.0.




AFAIK, internally this widgetset have TfpgBUtton, not TButton.
You are wrong when fpGUI depends LCL.




You right if you mind that "LCL-fpGUI" (shipped with Lazarus distribution) depends LCL.




To make it clear, and back to the topic, lets we list non-confused name of other widgetset.
There are many other widgetset written in Pascal:
* LPTK (Light Pascal Toolkit)  -  https://sourceforge.net/projects/lptk
* PasGF (Pascal Graphical Framework)  -  https://sourceforge.net/projects/pasgf
* MSEGUI+MSEIDE ~  https://sourceforge.net/projects/mseide-msegui




All above three don't require LCL to compile, but they requires FreePascal Compiler, to compile the code to executable;
as well as FCL+RTL package would also required by them.




For example you want to only compile an LPTK based application, you only need FPC.
But when you want to debug it in runtime, you always able to use Lazarus as debug IDE.




Those, any project that written "for FreePascal" (such 4 widgetset above) would always able to run and debug using Lazarus as IDE.
Additionally LPTK & PasGF are also compilable using Delphi, I dont know about MSEGUI nor MSEIDE yet.




However, LPTK, PasGF, fpGUI and MSEGUI has it's own visual designer. You can't use Lazarus form designer to design their form (TGfxForm, TpgfForm, TfpgForm).




And the pictures I've attached is one more another widgetset, that aim to use Lazarus as it's visual designer.
I named it "HDtoolkit", Hobbyist Dream toolkit. It was almost impossible to mix LCL and non-LCL in one application. That's why I named it Dream.
Luckily, today it have been using Lazarus as it's visual designer,
it requires LCL in designtime, but doesn't requires LCL in runtime.
If somebody like it, I will publish it here someday, but it has critical bugs yet today.




Well, I told the diff between FreePascal & Lazarus in my own perspective & my own usage.
If you wouldn't go through that deep, you might don't want to see any benefit of knowing the difference between FreePascal & Lazarus.

When you were logged in, you can see attachments.
Lazarus Trunk @ Windows7 64bit, XP 32bit, Debian under VirtualMachine

zeljko

  • Hero Member
  • *****
  • Posts: 1079
    • http://wiki.lazarus.freepascal.org/User:Zeljan
Re: whats the diff between FreePascal and Lazarus ?
« Reply #7 on: April 16, 2014, 04:40:36 pm »

You are right when refer to "LCL-fpGUI" which is another widgetset target supported by Lazarus.
You are right when refer to "fpGUI" located in C:\lazarus\lcl\interfaces\fpgui

You are wrong when don't believe that there are many widgetset that only requires FCL,
included "fpGUI". [size=78%]So, [/size]dont be confused about fpGUI and LCL-FPGUI[size=78%], both refer to one widgetset but have some degree differential.[/size]
LCL-fpGUI is in alpha stage. while another one has staable release 1.0.

AFAIK, internally this widgetset have TfpgBUtton, not TButton.
You are wrong when fpGUI depends LCL.


I didn't say anything like that, and I'm not confused about it. Read my sentence carefully one more time.


Leledumbo

  • Hero Member
  • *****
  • Posts: 8111
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: whats the diff between FreePascal and Lazarus ?
« Reply #8 on: April 16, 2014, 05:01:31 pm »
Quote
LCL is Lazarus's heart, brain, blood and Freepascal is it's back bone.
I think it's better suited if FPC is the soul, RTL is blood, bones and internal organs, FCL is outer body parts, LCL is clothes, weapon, protector, etc. :P

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 7493
Re: whats the diff between FreePascal and Lazarus ?
« Reply #9 on: April 16, 2014, 08:09:38 pm »
* LPTK (Light Pascal Toolkit)  -  https://sourceforge.net/projects/lptk

Last release 2005. Does it really compile with modern FPC's ?
 

howardpc

  • Hero Member
  • *****
  • Posts: 3176
Re: whats the diff between FreePascal and Lazarus ?
« Reply #10 on: April 16, 2014, 08:49:59 pm »
* LPTK (Light Pascal Toolkit)  -  https://sourceforge.net/projects/lptk
Last release 2005. Does it really compile with modern FPC's ?

No. At least the tarball I tried (last commit Oct 2006) produced 50 errors (including "identifier not found") before it gave up.

vmars316

  • New Member
  • *
  • Posts: 19
Re: whats the diff between FreePascal and Lazarus ?
« Reply #11 on: April 17, 2014, 12:46:39 am »
You're registered for almost 2 yrs at this forum, you have 18 posts and you still don't know difference ?
FreePascal (fpc) is compiler, while Lazarus is RAD IDE and it uses fpc as compiler.

Yes, I have been away from it all for a while .
But fairly recently wrote a .js game www.LiesAndCowpies.com called BenghaziGame .
And my interest in fpc/lazarus was renewed .
So I need a refresher .


Thanks All ,
for your great responses .
I am refreshed  :D