Recent

Author Topic: Bite the bullet on Pascal/Lazarus?  (Read 11158 times)

Pluto

  • New Member
  • *
  • Posts: 29
Bite the bullet on Pascal/Lazarus?
« on: January 14, 2019, 04:52:12 pm »
Ok, I'm going to get eaten alive on this post, but I have to do it...

I'm a professional developer thats been in the .NET and Java world for the last 18 years.  For various reasons I won't get into, I wanted to get into embedded development, and decided to relearn C++...  I downloaded C++Builder Community Edition just out of nostalgia.

My world was good until I decided the first project I want to do is in Raspberry Pi.  Just to test the waters I want to build a little smart home app that monitors various items in my house, chimes when a door opens after hours, etc.

This is where my world falls apart.  Lazarus makes it look so easy to put together a cute little interface and get started... I recall loving Delphi back in the day... This forum is buzzing with activity....

BUT... You guys shouldn't exist.  According to RedMonk, Tiobe, GitHub State of the Octoverse, Pascal is a dead or dying language.  According to RedMonk I should choose Haskell over Pascal...

The question is, why isn't there anything this good in C++?  How do I wrap my head around using some language thats going to get me laughed at in most social circles?  (Ok, that seems like baiting, but you understand the question!!!)  I just looked on Indeed... Nope, no Pascal jobs within an hour of home.  Do I put my relearning of C++ on hold to relearn, of all things, PASCAL?!?!?!

I promise I'm not a troll.  Why is everybody here?  What keeps you in Pascal?  Is this the best option for Raspberry Pi?  Or do I stick with C++ and use something like Ultimate++?

guest63552

  • Guest
Re: Bite the bullet on Pascal/Lazarus?
« Reply #1 on: January 14, 2019, 05:17:08 pm »
Ii is all the point what you want to do with and how much money and time you are wiling to invest: console, GUI, NET. And how fast. Sometime, Pascal was No. 1 in RAD world thanks to Borland and there was many programmers was grown with and get used to make console and GUI app very fast regarding the language .

Today, Pascal is pretty much dead language, but have quite a bit middle age and senior nostalgic, not willing nor have a need to spend time to learn another language. When they gone, the Pascal will gone for good as well.

Pascal is as well pretty much dead in schools today as educational tool. The world is changed quite a bit from pioneers days of electronic and software from 70' and 80'...

IMO, the best for embedded world is to stick with industrial standard languages as C/C++. It is hard that will ever die.

Handoko

  • Hero Member
  • *****
  • Posts: 5131
  • My goal: build my own game engine using Lazarus
Re: Bite the bullet on Pascal/Lazarus?
« Reply #2 on: January 14, 2019, 05:29:40 pm »
Pascal is not dead, friend.
It's just not as popular as it used to be.

If you visit this forum regularly, you will see lots of users active in the forum and you will know Lazarus/FreePascal/Pascal is actively developed. Some years ago, we added support to Android. Now we have LAMW and FPC JVM if you want to target Android platform. The support for MacOS is improving. Not only Raspberry and Arduino, now we also can do program for Microchip PIC. It may seem dead from outside but actually it is lively in the inside. And some years ago, someone even forked Lazarus and the result CodeTyphon seems to attract a good amount of users because it has its own beauty.

Do you want to join fun?
I promise you won't regret.

Why is everybody here?

I learned and used BASIC (and its variants). Not happy because it is slow. I then tried Assembly language, it is fast but not productive. I ever tried to learn C, Clipper, FoxPro, Python, they are not for me.

I am open to try new things but I still here because:
- Pascal is great, outsiders won't know what we mean
- Lazarus / FreePascal is free, well-maintained, native code for multiple targets
- The forum is very active, I always can learn something new everyday visiting the forum
- People here are nice and skilled

howardpc

  • Hero Member
  • *****
  • Posts: 4144
Re: Bite the bullet on Pascal/Lazarus?
« Reply #3 on: January 14, 2019, 05:51:24 pm »
The fact that most forum users here love Pascal does not imply that any of them is restricted to Pascal.
There are people here skilled in C, C++, assembler, D, Python, Haskell, Ruby, .NET, Java, etc. etc.
No one language or development environment is a perfect fit for every situation, platform or software requirement; and each has its advantages and drawbacks. But FPC/Lazarus is a compromise that suits most of the frequent visitors here for enough of their projects that for them it has become a principal compiler/IDE. But certainly not the only one(s) for many.
« Last Edit: January 14, 2019, 05:53:03 pm by howardpc »

Blaazen

  • Hero Member
  • *****
  • Posts: 3237
  • POKE 54296,15
    • Eye-Candy Controls
Re: Bite the bullet on Pascal/Lazarus?
« Reply #4 on: January 14, 2019, 06:00:04 pm »
Quote
The fact that most forum users here love Pascal does not imply that any of them is restricted to Pascal.
There are people here skilled in C, C++, assembler, D, Python, Haskell, Ruby, .NET, Java, etc. etc.
It is indeed very good. Those people know useful features of other IDEs (compilers) and it can be inspiration for Lazarus (FPC).
Lazarus 2.3.0 (rev main-2_3-2863...) FPC 3.3.1 x86_64-linux-qt Chakra, Qt 4.8.7/5.13.2, Plasma 5.17.3
Lazarus 1.8.2 r57369 FPC 3.0.4 i386-win32-win32/win64 Wine 3.21

Try Eye-Candy Controls: https://sourceforge.net/projects/eccontrols/files/

Handoko

  • Hero Member
  • *****
  • Posts: 5131
  • My goal: build my own game engine using Lazarus
Re: Bite the bullet on Pascal/Lazarus?
« Reply #5 on: January 14, 2019, 06:05:44 pm »
I agree too. Restricting to a single language or being fanatic is not good. Having experience on using variety of tools will improve the programming skill.

I wish I can have more free time so I can explore more possibilities. Because I have limited time for programming, I stick with Pascal only.

valdir.marcos

  • Hero Member
  • *****
  • Posts: 1106
Re: Bite the bullet on Pascal/Lazarus?
« Reply #6 on: January 14, 2019, 06:06:50 pm »
What keeps you in Pascal?
It's easy to learn. Best productivity. Best cost-benefit relation.

Pascal was created by Niklaus Wirth as a programming language for teaching fundamental concepts to work reliably and efficiently on the computers available in the 1970’s.
Niklaus Wirth was an university professor and researcher, with a Ph.D. in Electrical Engineering and Computer Science (EECS) from the University of California, Berkeley, USA.

HeavyUser

  • Sr. Member
  • ****
  • Posts: 397
Re: Bite the bullet on Pascal/Lazarus?
« Reply #7 on: January 14, 2019, 06:16:16 pm »
Ok, I'm going to get eaten alive on this post, but I have to do it...

I'm a professional developer thats been in the .NET and Java world for the last 18 years.  For various reasons I won't get into, I wanted to get into embedded development, and decided to relearn C++...  I downloaded C++Builder Community Edition just out of nostalgia.

My world was good until I decided the first project I want to do is in Raspberry Pi.  Just to test the waters I want to build a little smart home app that monitors various items in my house, chimes when a door opens after hours, etc.

This is where my world falls apart.  Lazarus makes it look so easy to put together a cute little interface and get started... I recall loving Delphi back in the day... This forum is buzzing with activity....

BUT... You guys shouldn't exist.  According to RedMonk, Tiobe, GitHub State of the Octoverse, Pascal is a dead or dying language.  According to RedMonk I should choose Haskell over Pascal...

The question is, why isn't there anything this good in C++?  How do I wrap my head around using some language thats going to get me laughed at in most social circles?  (Ok, that seems like baiting, but you understand the question!!!)  I just looked on Indeed... Nope, no Pascal jobs within an hour of home.  Do I put my relearning of C++ on hold to relearn, of all things, PASCAL?!?!?!

I promise I'm not a troll.  Why is everybody here?  What keeps you in Pascal?  Is this the best option for Raspberry Pi?  Or do I stick with C++ and use something like Ultimate++?
before answering your question can you answer me this
Why are you here? What pulled you in to even try lazarus/pascal after 18 years in other languages?

guest63552

  • Guest
Re: Bite the bullet on Pascal/Lazarus?
« Reply #8 on: January 14, 2019, 06:20:52 pm »
It's easy to learn. Best productivity. Best cost-benefit relation.

The main advantage of Pascal is that have quite clear and strict type, syntax and semantic definitions (that is the reason it was primary language in educational system so long time), comparing to C which can be consider a "dirty" language. OOP version of Pascal is also crystal clear comparing to C++. However, C++ have several advantage over OOP Pascal with which will hardly be achieved that easy as in C++ or any more practical language for the purpose...

dsiders

  • Hero Member
  • *****
  • Posts: 1052
Re: Bite the bullet on Pascal/Lazarus?
« Reply #9 on: January 14, 2019, 06:26:49 pm »
Ok, I'm going to get eaten alive on this post, but I have to do it...

I'm a professional developer thats been in the .NET and Java world for the last 18 years. 

Wow, you are true glutton for punishment. ;)

For various reasons I won't get into, I wanted to get into embedded development, and decided to relearn C++...  I downloaded C++Builder Community Edition just out of nostalgia.

My world was good until I decided the first project I want to do is in Raspberry Pi.  Just to test the waters I want to build a little smart home app that monitors various items in my house, chimes when a door opens after hours, etc.

This is where my world falls apart.  Lazarus makes it look so easy to put together a cute little interface and get started... I recall loving Delphi back in the day... This forum is buzzing with activity....

BUT... You guys shouldn't exist.  According to RedMonk, Tiobe, GitHub State of the Octoverse, Pascal is a dead or dying language.  According to RedMonk I should choose Haskell over Pascal...

The dead/dying argument was  presented in 1994 when Delphi was released. It wasn't true then, and IMO is no more true today. Object Pascal is not trendy. And it is likely that it never will be again. Borland missed that opportunity with Delphi  when they lost their way, then their minds, and ultimately the battle.

The question is, why isn't there anything this good in C++?

I'm going to assume that's a rhetorical question.

  How do I wrap my head around using some language thats going to get me laughed at in most social circles?  (Ok, that seems like baiting, but you understand the question!!!)  I just looked on Indeed... Nope, no Pascal jobs within an hour of home.  Do I put my relearning of C++ on hold to relearn, of all things, PASCAL?!?!?!

Well, it is baiting, Your biases and sheer disdain for Object Pascal are insurmountable.

I promise I'm not a troll. 

And yet, here we are.  BTW, I still say you're not a planet. ;)

Why is everybody here?  What keeps you in Pascal? 

I've been programming since 1984. I've used many different tools. My world got rocked when I found Delphi. It was very powerful and offered a level of productivity that I haven't  found in any tool since.

I am here because FPC/Lazarus allows me to continue to use great development tools/technology  without the annual ransom demand required by the current corporate overlords of Delphi. I no longer call myself a "professional developer"... I just need to get shit done. FPC/Lazarus allows me to do that.

Is this the best option for Raspberry Pi?  Or do I stick with C++ and use something like Ultimate++?

Wow, a real question. Why didn't you just ask that instead of slinging the propaganda?

My recommendation for you specifically is to stick to Assembly language.
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

balazsszekely

  • Guest
Re: Bite the bullet on Pascal/Lazarus?
« Reply #10 on: January 14, 2019, 06:44:42 pm »
I'm gonna open a popcorn and watch how this thread will spiral out of control. People are very emotional about they beloved language, even when it's pretty clear that is no such thing as "perfect language". Each has it's cons an pros, even pascal.  :P

dsiders

  • Hero Member
  • *****
  • Posts: 1052
Re: Bite the bullet on Pascal/Lazarus?
« Reply #11 on: January 14, 2019, 06:51:58 pm »
I'm gonna open a popcorn and watch how this thread will spiral out of control. People are very emotional about they beloved language, even when it's pretty clear that is no such thing as "perfect language". Each has it's cons an pros, even pascal.  :P

Cheap entertainment is good sometimes. ;)
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

garlar27

  • Hero Member
  • *****
  • Posts: 652
Re: Bite the bullet on Pascal/Lazarus?
« Reply #12 on: January 14, 2019, 07:02:03 pm »
The question is, why isn't there anything this good in C++?  How do I wrap my head around using some language thats going to get me laughed at in most social circles?  (Ok, that seems like baiting, but you understand the question!!!)  I just looked on Indeed... Nope, no Pascal jobs within an hour of home.  Do I put my relearning of C++ on hold to relearn, of all things, PASCAL?!?!?!
I guess I got used that "How does it feel to program in a dead language?". People who doesn't know about, don't want to know either, so I reply "I don't know, ask a COBOL programmer" and there comes the laughs and the conversation subject change  :D

But to mention the things I like:
   o- A simple syntax: the code is easy to read even if you are not familiar with the language, as a result you can focus on the problem you need to solve instead of the weird syntax of C like languages.
   o- The compiler is fast and your friend. It will tell where the problem is, and the cause. It always tells you when you are doing something dangerous.
   o- It is powerful (by the way, did you know the first versions of Photoshop where created with Pascal? Also Skype was made with Delphi before MS purchased it)

The problem for starters is to get rid off the weird things other languages has like  anonymous classes (I call them disposable classes)
I'm very grateful that in pascal you can't do something like this:
Code: C  [Select][+][-]
  1. for(;P("\n"),R=;P("|"))for(e=C;e=P("_"+(*u++/8)%2))P("|"+(*u/4)%2);

garlar27

  • Hero Member
  • *****
  • Posts: 652
Re: Bite the bullet on Pascal/Lazarus?
« Reply #13 on: January 14, 2019, 07:04:36 pm »
I'm gonna open a popcorn and watch how this thread will spiral out of control. People are very emotional about they beloved language, even when it's pretty clear that is no such thing as "perfect language". Each has it's cons an pros, even pascal.  :P
You are right!!!!
 :D

JD

  • Hero Member
  • *****
  • Posts: 1848
Re: Bite the bullet on Pascal/Lazarus?
« Reply #14 on: January 14, 2019, 08:45:27 pm »
I promise I'm not a troll.  Why is everybody here?  What keeps you in Pascal?  Is this the best option for Raspberry Pi?  Or do I stick with C++ and use something like Ultimate++?

Happy new year to all. I've been away for a while.  :D Like someone said, a lot of us know more than one language. My most recent projects involve the use of Java, Python & R.

When I see the games that Oracle is trying to play with Java (and I worry about that), I'm glad I have another option in Lazarus/FreePascal (albeit less famous) for some of my work.

What keeps me in Pascal? Because apart from Assembly Language/C/C++, it is the "closest to the metal" in terms of programming languages and way easier to learn. I cannot imagine having to go back to learn Assembly Language/C/C++ again even though the Qt framework (not free) made me think about it.

Lazarus/Free Pascal is excellent for many things. It has its weaknesses BUT I believe that it we can get enough mindshare in the embedded devices market and make it a viable alternative for IoT, it may become fashionable again. If I am not mistaken, that market is dominated by C++ (the Qt framework is heavily used) and to a lesser extent, at least in some specialist circles, JavaFX. I'm not a specialist in the embedded devices market, I just try to follow trends there.

JD
« Last Edit: January 14, 2019, 08:56:32 pm by JD »
Windows - Lazarus 2.1/FPC 3.2 (built using fpcupdeluxe),
Linux Mint - Lazarus 2.1/FPC 3.2 (built using fpcupdeluxe)

mORMot; Zeos 8; SQLite, PostgreSQL & MariaDB; VirtualTreeView

 

TinyPortal © 2005-2018