![]() |
Forum Index : Microcontroller and PC projects : Has anyone used Lazarus?
Author | Message | ||||
Peter63 Senior Member ![]() Joined: 28/07/2017 Location: SwedenPosts: 103 |
Hello Like so many times, I stumbled upon something called "Lazarus". What is Lazarus? Lazarus is a Delphi compatible cross-platform IDE for Rapid Application Development. It has variety of components ready for use and a graphical form designer to easily create complex graphical user interfaces. What can it do? You can create your own open source or commercial applications. With Lazarus you can create file browsers, image viewers, database applications, graphics editing software, games, 3D software, medical analysis software or any other type of software. ... anyone who has tested or used it? ![]() https://www.lazarus-ide.org/index.php / Peter63 |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 4067 |
Maybe rob? John |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 8015 |
/me sees "Pascal" and shudders... ;) I have fond memories of a program called "The Last One" that was used to write customized databases. Perhaps Lazarus has risen from its grave? :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Peter63 Senior Member ![]() Joined: 28/07/2017 Location: SwedenPosts: 103 |
I have mostly programmed in Visual Basic in recent years. But when I saw "Lazarus", I was surprised. I have tried a little TurboPascal for DOS, and Microsoft QuickPascal DOS, but that was many years ago. That "Lazarus", should work in Windows but also in Linux, seemed interesting to me. But does it also work for Raspberry Pi 4 / 5 ?? /Peter63 |
||||
PhenixRising Guru ![]() Joined: 07/11/2023 Location: United KingdomPosts: 1453 |
Lazarus: |
||||
PhenixRising Guru ![]() Joined: 07/11/2023 Location: United KingdomPosts: 1453 |
@Mixtel90 I see a compiler and shudder although sometimes it‘s the only way. ![]() |
||||
Peter63 Senior Member ![]() Joined: 28/07/2017 Location: SwedenPosts: 103 |
I've looked into it a bit more and, Yep, there's a lot on YouTube that shows how to use it, together with the Raspberry Pi. Now Python is perhaps the language I usually use when programming on the Raspberry Pi, but it's interesting to have another IDE that you might be able to use (even if it's Pascal language). ![]() /Peter63 |
||||
robert.rozee Guru ![]() Joined: 31/12/2012 Location: New ZealandPosts: 2446 |
GFXterm is written using Lazarus, and it is what i use for most desktop development tasks; there IS a bit of a learning curve getting used to the concept of creating event-driven programs, but most folks should get used to it after a while. down side is the binaries created are quite large (3Mb+), and getting your workflow sorted out initially can be a bit of a challenge. but with care you can end up being able to create cross-platform applications that can be compiled without change on Windows, MacOS, Linux, Raspbian (RPi), and others. syntax wise, modern Pascal is just as capable as C or any other language currently in general use. source code is compact and readable. cheers, rob :-) |
||||
PhenixRising Guru ![]() Joined: 07/11/2023 Location: United KingdomPosts: 1453 |
I don't mind the syntax but I detest event-driven and OOP. But straight procedural is still an option, right? |
||||
Marcel27![]() Regular Member ![]() Joined: 13/08/2024 Location: NetherlandsPosts: 96 |
In the past (1984) I programmed in Turbo Pascal. Later I switched to C, but never in c++, I hate c++. I love Pascal because the syntax is clear, clean and the result is super fast and it is made by Niklaus Wirth. For work I programmed in Visual Basic for Applications, mostly Word and Excel. Two years ago I found Blackbox Component builder. It's just a descendant of Pascal/Oberon/Modula. All the same taste. 3 day's ago I have installed Lazarus (FreePascal) on my LInux Mint (LMDE6) distro. I'm still learning the IDE and the new overwhelming syntax again. The problem I have with the IDE is that it have scattered windows everywhere and they won't sick together. Marcel |
||||
Peter63 Senior Member ![]() Joined: 28/07/2017 Location: SwedenPosts: 103 |
I found this video on YouTube... ![]() /Peter63 |
||||
robert.rozee Guru ![]() Joined: 31/12/2012 Location: New ZealandPosts: 2446 |
likewise, i dislike OOP. on the whole, you can choose to ignore the OOP stuff without suffering any major impediment or disadvantage. creating a GUI application consists, essentially, of designing one or more forms using a graphical "form designer", then for each event-causing thing on your form(s) (a button press, a timer event, etc) double-click on said thing and you are brought to the "code editor" where a procedure stub is automatically created for the event where you can fill in your code. command-line (non-GUI) applications are even simpler, with you just go straight to the "code editor" with a short stub of half a dozen lines is automatically created for you. Lazarus is modelled after Delphi and Turbo Pascal, although over the years has evolved in a number of areas. Collectively they are classed as "RAD Environments", where RAD stands for Rapid Application Development. cheers, rob :-) |
||||
toml_12953 Guru ![]() Joined: 13/02/2015 Location: United StatesPosts: 450 |
I use it indirectly. By that I mean I have it installed and a program called Paract BASIC uses it. Paract is an ANSI Standard Full BASIC. What it does is to compile a BASIC program into Pascal. Then Lazarus compiles that into a true EXE file. The EXE generated by Lazarus is faster than a comparable C program! The compilation steps are automatic so the user only has to click on RUN to compile and run the program. It's fun to show a BASIC benchmark and print the execution time. Then C programmers, figuring they can beat that time by a great margin, try to write a faster program to do the same thing. When they see that the BASIC program is faster, they accuse me of lying about the times I get. I tell them about Paract, they try it for themselves and they are convinced. Example (run on 3.5 GHz Core i9): 100 LET t=time 110 LET loops=450000 120 FOR i=1 TO loops 130 LET r0=10 140 DO 150 LET x=r0 160 LET x=x+1 170 LET x=x-4.567E-4 180 LET x=x+70 190 LET x=x-69 200 LET x=x*7 210 LET x=x/11 220 LET r0=r0-1 230 LOOP WHILE r0>0 240 LET x=log(x) 250 LET x=sin(x) 260 LET x=sqr(x) 270 LET x=sqr(x) 280 NEXT i 290 PRINT x 300 LET t=time-t 310 PRINT "Loops:";loops 320 PRINT "Time:";t;"seconds" 330 PRINT "Index:";34/t*loops 340 END 0.880981899968678 Loops: 450000 Time: 0.0270000000018626 seconds Index: 566666666.627574 Benchmark at: https://www.thimet.de/CalcCollection/CalcPerformance.html Paract BASIC at: https://decimalbasic.web.fc2.com/BASICAcc2.htm |
||||
Marcel27![]() Regular Member ![]() Joined: 13/08/2024 Location: NetherlandsPosts: 96 |
Thanks to Peter63.... I saw that my Linux distro had an old version of Lazarus 2.2.6+sfsg2-2 in it's programming source. I Uninstalled it and downloaded the latest version from the Lazarus website. It has besides the old one, a new IDE interface - single window just like Visual Basic. Now it more usable. In the past I dumped Lazarus because of the dull scattering and not docking windows. Lazarus 4.2 (rev Unknown) FPC 3.2.2 x86_64-linux-gtk2 ![]() Edited 2025-08-24 04:33 by Marcel27 |
||||
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |