Recent

Author Topic: Roadmap for FPC and Lazarus (2023)  (Read 19513 times)

af0815

  • Hero Member
  • *****
  • Posts: 1381
Re: Roadmap for FPC and Lazarus (2023)
« Reply #45 on: February 19, 2023, 10:49:09 am »
It's new for me too. I assume it is the foundation's roadmap, not the projects themselves.
But nothing to see on the foundations page. I have checked this before i made my post

The editor of the magazine was a bit over-enthusiastic to publish this roadmap that he and a member of the FPC and Lazarus teams each thought of, but hadn't yet finalized. Though even if this would be published on the Foundation's site this roadmap doesn't have any final say in what we devs work at, cause we simply work at what we're interested in. And if no one should be interested to work on some point that the foundation mentions... well... though luck. 🤷‍♀️
...
For me is the point -> who speaks for the official roadmap.

There is no official roadmap at least for FPC, cause we don't operate in that way.
Thanks for clearing the points.
regards
Andreas

AFFRIZA 亜風実

  • Full Member
  • ***
  • Posts: 144
Re: Roadmap for FPC and Lazarus (2023)
« Reply #46 on: February 19, 2023, 01:15:26 pm »
Many developers may fit into your category.

However, are you going to discourage developers who might be working on some electronic appliance that has no display, and the only graphical interface is a web page, from using Lazarus and Free Pascal?

By saying, "oh, your use cases do not fit mine! go away!"
Don't worry, I'm exaggerating, I know you would never say that!  :D

True, said developers that do things that don't fit your use cases may not be the majority of developers that use FPC and Lazarus, but they do exist and should not be shunned.

I actually tried to make something like Qt Quick's clone for Pascal with BESENScript but failed and I make something like JSON, and I give up at the end. They're Here and Here.

In the end of the day, I'm ended up using Qt Quick and C++ instead of Lazarus, FPC, and Object Pascal.  :D
Kyoukai Framework: https://github.com/afuriza/kyoukai_framework

Dukung kemerdekaan Donetsk dan Lugansk! Tidak membalas profil berbendera biru-kuning apalagi ber-Bandera.

VisualLab

  • Hero Member
  • *****
  • Posts: 625
Re: Roadmap for FPC and Lazarus (2023)
« Reply #47 on: February 19, 2023, 01:49:28 pm »
Anything that takes us in the direction of replacing other languages with fpc I’m in favor of. I would like to create a website using only Lazarus/fpc.

They are unlikely to be replaced. It is important to show people that Pascal or Object Pascal are not worse than many other solutions. Depending on the features that are taken into consideration, Pascal may be slightly inferior to the C language or have an advantage over it (similar to Object Pascal and C++). All because there is no perfectly optimal tool. Everyday practice shows that it cannot be done, sometimes you have to make some compromises (of course there are people who believe that it is possible to create an ideal programming language after all - it's a utopia). Added to this are the needs, preferences and habits of the user.

As for the popularization of Pascal - there have been many discussions on this topic. And usually the conclusion was that most people do not want to compare and check different solutions themselves, but prefer to believe in "the only right truths" revealed to them by the media, corporations or gurus they know. Because it's easier that way, you don't have to make too much effort (laziness). If it were otherwise, there would not be so many people in the world who believe in miraculous diets, secret medicine men or the only right views: utopian (secular) or fantastic (religious). For fanaticism, so far, no one has invented a cure. I once read a theory (but I don't remember where) that fanaticism could be useful to humans (as a species) for survival in times when people lived in caves or led a nomadic lifestyle (hunter-gatherers). But if we look through the history of mankind from the last 2000 years, it turns out that it was the skeptics who, by challenging the sacred findings and taboos, checking and analyzing various problems, contributed to the development of humanity. And all sorts of fanatics incredibly hampered the development or even set back individual populations in development (I do not give examples, because an argument will break out). So it seems to me that attempts to popularize Pascal "crash" on a kind of IT fanaticism. How to deal with it? How to show people that there is another world somewhere, that they can get out of their musty, cramped and dingy basement?

VisualLab

  • Hero Member
  • *****
  • Posts: 625
Re: Roadmap for FPC and Lazarus (2023)
« Reply #48 on: February 19, 2023, 02:50:02 pm »
I saw the CSS parts mentioned. That is ambitious.

That's why I wrote about it. In my opinion, CSS3 is very extensive. Of course, as for the purposes of formatting web content, it is desirable.

My doubts are related to the fact that once (2004 - 2010) I was developing my own project that was supposed to allow you to create a website in Delphi. In the first step, I created a set of classes that mapped server-side HTML elements (including forms). In the next one, I started creating classes responsible for CSS. In the next stages, I planned to add classes that were supposed to handle typical complex elements of web pages, such as: main menu, accordion. The whole thing worked with the Indy package. The server application used data modules (TDataModule). Components could be combined in the Object Inspector or in source code. Many components had their own property editors. There was one main component of the site manager, which contained a tree structure of pages (nodes). Components generating HTML code could be connected to these nodes. The manager parsed the URL and selected the appropriate node to generate the HTML code. The whole thing supported HTML in various versions 4 and partly 5. It was possible to select the HMTL version globally. Before sending, the HTML code was stored by the manager in a TStringList object. Once generated, the HTML code was sent back to the web browser. This part worked as I intended (tested locally). Unfortunately, I'm stuck on CSS, which CSS is very complex. Additionally, the CSS implementation concept I chose was not very well thought out. Other disadvantages of this design: HTML rows are created by concatenation (+) of strings and only then added to the list, no possibility to combine HTML components with database components. I tried to come back to this project. In the meantime, CSS3 came out. For such a project to make sense, this version of CSS would have to be implemented.

I experienced firsthand the complexity and time-consuming implementation of CSS. Of course, window applications (GUI) are different from web pages. Nevertheless, the implementation of CSS into the GUI is a lot of work to be done.

But maybe this project will be a good idea :)

Joanna from IRC

  • Hero Member
  • *****
  • Posts: 1317
Re: Roadmap for FPC and Lazarus (2023)
« Reply #49 on: February 19, 2023, 02:56:53 pm »
Visual lab your posts are always delightful to read  :)
Quote
As for the popularization of Pascal - there have been many discussions on this topic. And usually the conclusion was that most people do not want to compare and check different solutions themselves, but prefer to believe in "the only right truths" revealed to them by the media, corporations or gurus they know. Because it's easier that way, you don't have to make too much effort (laziness).
I agree with the part of most people being lazy and gullible. I guess that pascal programming has been relegated to a niche of hobbyists who have enough spare time and inclination to pursue it for fun. It’s not possible to get a job programming in pascal anymore is it? As a result our only hope is to create applications and try to promote  them ourselves. To be our own bosses. Maybe it’s better this way if it were not for people who don’t use pascal going out of their way to bother us.

It’s annoying to be in a minority who is never taken seriously outside of a small group of people who Also program in pascal.

As for skeptics challenging things, a lot of those skeptics suffered horrible consequences. Challenging established customs and taboos is not always a good idea. Sometimes those things exist for very good reasons because of behaviors which led to disaster in the past.{usury comes to mind}

If history is anything to go by, it seems like humans basically like to make the same mistakes over and over again on larger and larger scales.
✨ 🙋🏻‍♀️ More Pascal enthusiasts are needed on IRC .. https://libera.chat/guides/ IRC.LIBERA.CHAT  Ports [6667 plaintext ] or [6697 secure] channel #fpc  #pascal Please private Message me if you have any questions or need assistance. 💁🏻‍♀️

VisualLab

  • Hero Member
  • *****
  • Posts: 625
Re: Roadmap for FPC and Lazarus (2023)
« Reply #50 on: February 19, 2023, 04:07:48 pm »
Maybe it’s better this way if it were not for people who don’t use pascal going out of their way to bother us.

Yes. This applies to other programming languages as well (but to a lesser extent than Pascal). For example, C# was promoted by Microsoft with a huge amount of money pumped into promotion. The promotion was carried out in two ways:

1) exaggerated praise of the features and capabilities of the C# language and tools prepared for it,
2) harassing and merciless combating other solutions in various ways.

In the initial phase, this concerned the Java language. As of recently, a C# based solution is probably slightly better than a Java based one. But it used to be the other way around. It took many years for C# (and its companion tools) to become really useful. In addition to Java, of course, Microsoft also suppressed other competing solutions, including Delphi (Object Pascal), because it was definitely much better than C# for many years (despite Delphi's known shortcomings). But the goal was not to provide better tools, but to dominate the market. Quality was not that important (i.e. much lower in the hierarchy of objectives). Moreover, Delphi is still better than C# when it comes to windowed (and probably mobile) applications as well.

There's a different fight going on right now: Python versus Java (and partly C# as well). However, in this case, it is difficult to identify a corporation directly involved in such a fight (maybe Google to some extent, although this is uncertain). Here the attackers are whole herds of poor programmers who know only Python (or some other languages like C++, but they couldn't handle them). Such people have no idea about other languages, so they are not able to properly assess the pros and cons of individual solutions. It is obvious to anyone who has dealt with these languages that Python is no match for Java (despite Java's many shortcomings). But for Python users, it doesn't matter. The goal is to "fight the enemy". It is not enough for them to promote their own solution (which is quite poor). Again: dominating, not improving your own solution.

To sum up. Object Pascal was trampled into the ground because it threatened competitors. Now, other solutions are being trampled into the ground level. And at the same time, various fanatics make sure that the trampled one does not get up again. If someone tries to raise their head above the stepping level, they are stepped on again. It's not out of pure malice. This is calculation. The less competition, the easier it is to master a certain area. This does not mean that users of other solutions should give up. We have to fight this pathology.

As for skeptics challenging things, a lot of those skeptics suffered horrible consequences. Challenging established customs and taboos is not always a good idea. Sometimes those things exist for very good reasons because of behaviors which led to disaster in the past.{usury comes to mind}

That's true. Many people were persecuted or murdered. But again: this was most often due to the fact that it threatened someone's interests. But if it wasn't for the skeptics, who knows where people would be now. Maybe they would still live in a cave and shit in some corner of it, because whoever went to piss outside the cave at night would be eaten by a saber tiger or wolves :)

Yes, there were also those who, by undermining certain social arrangements, harmed society (thieves, murderers, paedophiles, slanderers, etc.). But they were not skeptics, they were scumbags.

If history is anything to go by, it seems like humans basically like to make the same mistakes over and over again on larger and larger scales.

Maybe because those who have already learned something leave. And the others who come do not want to learn from other people's mistakes (laziness and greed). I guess it always was. According to biologists, humans are just slightly smarter animals. There are differences between them, but that's just variability within the species. It's just a pity for those who are less animal and more human. The events of the last decade have painfully reminded us of this fact.

Joanna from IRC

  • Hero Member
  • *****
  • Posts: 1317
Re: Roadmap for FPC and Lazarus (2023)
« Reply #51 on: February 19, 2023, 04:37:19 pm »
Quote
Maybe because those who have already learned something leave. And the others who come do not want to learn from other people's mistakes 
Sometimes the Original reasons for doing things are forgotten and someone comes along and says why go though this complicated process of preparing this food? Because that’s they way it has always been done...   The skeptic skips a few steps and has to learn all over again that it’s Because the food is poisonous if not prepared correctly.
Quote
To sum up. Object Pascal was trampled into the ground because it threatened competitors. Now, other solutions are being trampled into the ground level. And at the same time, various fanatics make sure that the trampled one does not get up again. If someone tries to raise their head above the stepping level, they are stepped on again. It's not out of pure malice. This is calculation. The less competition, the easier it is to master a certain area. This does not mean that users of other solutions should give up. We have to fight this pathology.
I think most people No matter how brilliant they may be at programming are ill prepared for these types of attacks and are often either in denial/unaware that the attacks are happening ,have the misconception that they can somehow reason with the attacker and convince them to give pascal a Fair chance or just get emotionally manipulated into either getting in an argument or rage quitting.

The thing that surprised me the most is that people seem to be incapable disengaging and putting the attackers on ignore or leaving them behind. Maybe it takes a special type of training to deal with attackers that most people don’t have. It definitely doesn’t help that the attackers have big money supporting them.

As for technology I don’t think it was the skeptics that changed things it was being bested by people with other ideas. For instance nations who believed the earth was flat didn’t get to plunder the new world and get rich. Countries that were too oppressive discouraged creativity and fell behind in technology and then got conquered.

This is probably analogous of what will happen to countries/businesses  that use inferior software at some point.
« Last Edit: February 19, 2023, 05:03:32 pm by Joanna »
✨ 🙋🏻‍♀️ More Pascal enthusiasts are needed on IRC .. https://libera.chat/guides/ IRC.LIBERA.CHAT  Ports [6667 plaintext ] or [6697 secure] channel #fpc  #pascal Please private Message me if you have any questions or need assistance. 💁🏻‍♀️

Thaddy

  • Hero Member
  • *****
  • Posts: 16520
  • Kallstadt seems a good place to evict Trump to.
Re: Roadmap for FPC and Lazarus (2023)
« Reply #52 on: February 19, 2023, 05:19:15 pm »
This is probably analogous of what will happen to countries/businesses  that use inferior software at some point.
That is silly Joanna.
What I have learned over some 45 years experience is that there is no perfect software. And no perfect hardware for that matter.
Note that "inferior" is one of the most powerful spells from Harry Potter... Be careful!
But I am sure they don't want the Trumps back...

VisualLab

  • Hero Member
  • *****
  • Posts: 625
Re: Roadmap for FPC and Lazarus (2023)
« Reply #53 on: February 19, 2023, 11:29:26 pm »
Quote
Maybe because those who have already learned something leave. And the others who come do not want to learn from other people's mistakes 
Sometimes the Original reasons for doing things are forgotten and someone comes along and says why go though this complicated process of preparing this food? Because that’s they way it has always been done...   The skeptic skips a few steps and has to learn all over again that it’s Because the food is poisonous if not prepared correctly.
Quote
To sum up. Object Pascal was trampled into the ground because it threatened competitors. Now, other solutions are being trampled into the ground level. And at the same time, various fanatics make sure that the trampled one does not get up again. If someone tries to raise their head above the stepping level, they are stepped on again. It's not out of pure malice. This is calculation. The less competition, the easier it is to master a certain area. This does not mean that users of other solutions should give up. We have to fight this pathology.
I think most people No matter how brilliant they may be at programming are ill prepared for these types of attacks and are often either in denial/unaware that the attacks are happening ,have the misconception that they can somehow reason with the attacker and convince them to give pascal a Fair chance or just get emotionally manipulated into either getting in an argument or rage quitting.

The thing that surprised me the most is that people seem to be incapable disengaging and putting the attackers on ignore or leaving them behind. Maybe it takes a special type of training to deal with attackers that most people don’t have. It definitely doesn’t help that the attackers have big money supporting them.

As for technology I don’t think it was the skeptics that changed things it was being bested by people with other ideas. For instance nations who believed the earth was flat didn’t get to plunder the new world and get rich. Countries that were too oppressive discouraged creativity and fell behind in technology and then got conquered.

This is probably analogous of what will happen to countries/businesses  that use inferior software at some point.

I should have specified it. Depends on what you mean by skeptic. Besides, indeed, sometimes doubting is not enough. You also need to be curious and willing to solve the problem. Or at least the willingness to check other existing solutions in order to get an answer to the bothering problem. Anyway, it seems to me that moderate skepticism (but not pessimism or total denial) is the first step in looking for an answer / solution to a problem.

For some people, this may be one of the factors to try to learn a few other programming languages - what are their advantages and disadvantages. Of course it costs money (mostly: time). But I think it will pay off (at least it did for me).

Thanks to this, it is easier to compare the deficiencies and annoyances that languages (i.e. tools related to them) have. For me, examples of C and C++ annoyances are: preprocessor (actually: macros), headers to some extent (but you can live with it), undefined behavior, build system (especially CMake). Fortunately, Visual Studio alleviates the problems associated with creating headers and the build system in C and C++ (yes, I'm lazy and I like the IDE a lot). But these languages also have advantages, for example: a lot of libraries, generated machine code is fast.

On the other hand, when it comes to C # or Java, one of the disadvantages (for me) is that the program written in them, after compilation, runs in the VM. But someone else might not mind at all.

The situation is much worse in the case of scripting languages. For me, languages like JavaScript, PHP and Python were a big disappointment. While you can still cope with PHP (but it can "spoil your blood"), JavaScript and Python cry out to heaven for vengeance. Except that for now there is no escape from JavaScript (web browsers). Fortunately, Python is not coercive.

Of course, everything depends on the needs and expectations of the user of the tool. I really like the convenience, transparency and ease of use. But not at such a high cost as it is implemented in the above-mentioned scripting languages.

As for the popularity of Python, it seems to me that only a small percentage of people who use it have a real knowledge of programming and how computers work. They are probably more script users who have some urgent work to do (e.g. data processing). And they do it the way they can: Python + bits of scripts from the Internet. And the media hype reassures them that they do everything according to art. And they don't need those unnecessarily long-winded, maliciously over-complicated programming languages that require compilers. Just like people who believe in ads like: "He learned this one strange trick. Now he's raking in the big bucks. Professional programmers hate him" :)

Joanna from IRC

  • Hero Member
  • *****
  • Posts: 1317
Re: Roadmap for FPC and Lazarus (2023)
« Reply #54 on: February 19, 2023, 11:53:11 pm »
Quote
Except that for now there is no escape from JavaScript (web browsers).
Is there a way to have a web browser written in fpc that does not use javascript?
✨ 🙋🏻‍♀️ More Pascal enthusiasts are needed on IRC .. https://libera.chat/guides/ IRC.LIBERA.CHAT  Ports [6667 plaintext ] or [6697 secure] channel #fpc  #pascal Please private Message me if you have any questions or need assistance. 💁🏻‍♀️

lainz

  • Hero Member
  • *****
  • Posts: 4685
  • Web, Desktop & Android developer
    • https://lainz.github.io/
Re: Roadmap for FPC and Lazarus (2023)
« Reply #55 on: February 20, 2023, 12:10:34 am »
Quote
Except that for now there is no escape from JavaScript (web browsers).
Is there a way to have a web browser written in fpc that does not use javascript?
Whats a web browser without Javascript today. You can't open most of the websites without JS.
If you mean a desktop "web application" (like. Html and css only) without Javascript is another thing. Say accessing the Dom from Pascal. Possible is. Hard to believe it will be done.

Joanna from IRC

  • Hero Member
  • *****
  • Posts: 1317
Re: Roadmap for FPC and Lazarus (2023)
« Reply #56 on: February 20, 2023, 12:26:04 am »
Quote
Whats a web browser without Javascript today. You can't open most of the websites without JS.
That is what I was thinking, you can technically have a website without javascript but it doesn’t look very good.

Isn’t there a way to achieve what javascript does using pascal? Or would it require the web browser used to be written in pascal? Sorry I don’t know much about web programming.
If your web browser was written in pascal and it visits a website using a webserver written in pascal would that work?
✨ 🙋🏻‍♀️ More Pascal enthusiasts are needed on IRC .. https://libera.chat/guides/ IRC.LIBERA.CHAT  Ports [6667 plaintext ] or [6697 secure] channel #fpc  #pascal Please private Message me if you have any questions or need assistance. 💁🏻‍♀️

Joanna from IRC

  • Hero Member
  • *****
  • Posts: 1317
Re: Roadmap for FPC and Lazarus (2023)
« Reply #57 on: February 20, 2023, 12:43:16 am »
Quote
Depends on what you mean by skeptic. Besides, indeed, sometimes doubting is not enough. You also need to be curious and willing to solve the problem. Or at least the willingness to check other existing solutions in order to get an answer to the bothering problem.
One think I’ve noticed often in the media is that things that are definitely problems are discussed in such a way to steer people in a direction that not only doesn’t prevent the problem from reoccurring but makes more problems.

What might at first seem like curious skeptics Trying to improve things are more often than not people in search of profiteering. Creating “problems to solve” out of thin air under the guise of altruism. One example is the invention of margarine to solve the “problem” of butter? Butter was not a problem to begin yet people somehow were convinced it was and switched to margarine.
It makes be want to question The motivations of all would be skeptics  8)
✨ 🙋🏻‍♀️ More Pascal enthusiasts are needed on IRC .. https://libera.chat/guides/ IRC.LIBERA.CHAT  Ports [6667 plaintext ] or [6697 secure] channel #fpc  #pascal Please private Message me if you have any questions or need assistance. 💁🏻‍♀️

lainz

  • Hero Member
  • *****
  • Posts: 4685
  • Web, Desktop & Android developer
    • https://lainz.github.io/
Re: Roadmap for FPC and Lazarus (2023)
« Reply #58 on: February 20, 2023, 12:58:41 am »
Quote
Whats a web browser without Javascript today. You can't open most of the websites without JS.
That is what I was thinking, you can technically have a website without javascript but it doesn’t look very good.

Isn’t there a way to achieve what javascript does using pascal? Or would it require the web browser used to be written in pascal? Sorry I don’t know much about web programming.
If your web browser was written in pascal and it visits a website using a webserver written in pascal would that work?

You can use pas2js to write the code that modifies the website and add interaction with Pascal. Then that is compiled into Javascript. And that can be run from any browser even mobile.

VisualLab

  • Hero Member
  • *****
  • Posts: 625
Re: Roadmap for FPC and Lazarus (2023)
« Reply #59 on: February 20, 2023, 01:27:43 am »
Quote
Except that for now there is no escape from JavaScript (web browsers).
Is there a way to have a web browser written in fpc that does not use javascript?

As Lainz already mentioned, of course you can. But that's a gigantic amount of work. The sheer number of different types of parsers is a lot of work, of which the most commonly used are: HTML, CSS, SVG, XML and of course JavaScript (this is probably the most extensive). Parsers only. In addition, there are huge DOM containers, one for each open web page. Next, the 2D and 3D content rendering subsystem (WebGL). AJAX support should also be present. You also need to remember about the communication module with the server, which supports various protocols: HTTP, FTP, etc. This is only part of it. And there is probably much more. At the source code level of such a web browser, JavaScript itself is not needed. All you need is a compiler of the language in which the browser code will be created.

The opposite situation is a server-side application. I mean a computer program that generates content (a web page) and sends it to the client (i.e. a web browser). It can be a DLL/SO library cooperating with an HTTP server (e.g. Apache, nginx) or an independent website containing an integrated HTTP server (as an object of a specific class). JavaScript is not needed here either. Just generating HTML content is no problem. But if it's supposed to be aesthetically pleasing, it would have to be formatted with CSS. The CSS code can also be generated or send previously prepared CSS files. But for the content to be interactive, such a website would have to be able to generate JavaScript code on the fly or send JS files already created.

To sum up: JavaScript is needed as part of the content of a web page because it is used by the browser. The website generator doesn't need JavaScript for anything. It is the web browser that needs it, and only if the content is to be interactive (in the broad sense of the word).

There is a bizarre opinion in the media that a website should not or cannot be created in languages compiled to machine code. According to this opinion, a website must be created using: Java (JSP, JSF, servlets, etc.), C# (ASP.NET), PHP, Ruby, Python or JavaScript (node.js). And this is not true. This can even be done in pure assembler. I am a bit surprised that no one (meaning: company) has created a library to support websites in C++ so far. Such a well-equipped library (large collection of classes) would be unbeatable by any VM or interpreter-based solutions. The same could be done in Object Pascal. It's just a matter of cost (time). Moreover, it would be a very strong argument in favor of ecology. No one is saying out loud yet that some of the server's electricity is wasted unnecessarily on grinding intermediate code. Anyway, then the servers would not have to be so extensive in terms of hardware (CPU, RAM, etc.). The best example is Facebook. They started to create it in PHP and then they found themselves in a... Instead of doing various flips (HipHop), perhaps they would be better off if they invested this money in such a solution. And this is not the only such case (Instagram, Twitter).

 

TinyPortal © 2005-2018