* * *

Author Topic: NewPascal plans, Generics.Collections and FPC trunk  (Read 15852 times)

SlightlyOutOfPhase

  • New member
  • *
  • Posts: 18
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #15 on: May 06, 2018, 04:04:08 am »
Sad news but good news, it seems. Looks like we're more likely to see a compilable FPC with the Delphi 2009+ features everyone has been waiting for forever sooner than later, plus some that aren't even in Delphi! (Which is good. Being compatible with Delphi is important, but being the same is totally irrelevant.)

This is the kind of stuff that should have been focused on a long time ago IMO, instead of stuff literally nobody cares about at all... (Seriously, what's with all the i8086 compiler target commits in the trunk recently? What a completely pointless waste of time.)

@Bee: Am I the only one who has noticed that the doc links on the FPC website still direct to the 3.0.2 docs, even though the 3.0.4 docs obviously exist? And there's more than a little bit of incorrect information in them in general as well... they say variables aren't initialized for example, but everyone knows that of course they are.....
« Last Edit: May 06, 2018, 04:46:36 am by SlightlyOutOfPhase »

Pascalist

  • Newbie
  • Posts: 1
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #16 on: May 06, 2018, 04:58:05 am »
I'll go wherever Generics.Collections goes, personally! It's definitely more important than even Maciej realizes I think... who doesn't use it? All of the classes in it are faster than any other that exists in FPC, and also use less memory because everything is stored as what it actually is, instead of an untyped pointer. Plus who wants to be constantly writing stupid typecast-heavy code like
 
Code: Pascal  [Select]
  1. TSomething(TAnotherThing(TLastThing(TObject))))

anymore? There's just no logical reason not to use generics...
« Last Edit: May 06, 2018, 04:59:47 am by Pascalist »

Thaddy

  • Hero Member
  • *****
  • Posts: 6878
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #17 on: May 06, 2018, 08:53:05 am »
they say variables aren't initialized for example, but everyone knows that of course they are.....
What make you think that? (Global) Variables on the heap may be initialized - that's implementation detail, imo -, but local variables are not!
Ada's daddy wrote this:"Fools are my theme, let satire be my song."

bee

  • Sr. Member
  • ****
  • Posts: 347
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #18 on: May 07, 2018, 03:46:15 am »
@Bee: Am I the only one who has noticed that the doc links on the FPC website still direct to the 3.0.2 docs, even though the 3.0.4 docs obviously exist? And there's more than a little bit of incorrect information in them in general as well... they say variables aren't initialized for example, but everyone knows that of course they are.....

It's not a problem. The difference between the two versions isn't too much anyway. The official techinal documentation of FPC is actually pretty good, I think. It just doesn't look very nice.

The real problem is it lacks of guidance documentations, such as Getting Started and How Tos, especially on the Lazarus side. Actually, there are many gems hidden within the repos, but nobody knows about them because there's noone shows them of to the world. If you talk about this to the core devs, they'll scream "you do it if you want it". Well, I can't blame them since both FPC and Lazarus are volutary-based open source projects. But since nobody really do anything about it, why don't core devs starting to make one by themselves? At least as an example to the others to make another one.

And I heard that FPC already has a foundation or something. Does it mean it finally has some kind of financial support? If that so, I think they need to hire professional people to do these things:
1. Migrate all the codes to github so it's more visible to the outside world, including the code management tools (issues, etc).
2. Build a great and complete documentations.
3. Make a brand new website and forum that looks modern.
4. Plus make some marketing noises on the internet and social media.

Let the world knows that we have a new and modern Pascal.
-Bee-

A long time pascal lover.

RAW

  • Hero Member
  • *****
  • Posts: 673
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #19 on: May 07, 2018, 06:40:37 am »
How about a HELLO LAZARUS program ???
Not like the normal "Hello World" programs... I mean a program that is able to show all the basic stuff that you need in one program. Is that too much or can that be done. Maybe even with some advanced examples for important things...

Everything a Newbie must know and need in almost every program... 
Maybe that's better than any documentation, at least for a quick start...  :)
Windows 7 Pro (x64 Sp1) And Windows XP Pro (x86 Sp3) - LAZARUS 1.8.4 FPC 3.0.4 // 1.7 FPC 3.1.1

hnb

  • Sr. Member
  • ****
  • Posts: 253
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #20 on: May 07, 2018, 09:12:20 am »
And I heard that FPC already has a foundation or something. Does it mean it finally has some kind of financial support? If that so, I think they need to hire professional people to do these things:
1. Migrate all the codes to github so it's more visible to the outside world, including the code management tools (issues, etc).
2. Build a great and complete documentations.
3. Make a brand new website and forum that looks modern.
4. Plus make some marketing noises on the internet and social media.

Let the world knows that we have a new and modern Pascal.

The boss of foundation is the same person who is responsible for my ban : Michael Van Canneyt... IMO his approach of doing things is far away from "modern".

I will for sure run some new foundation (or some way of crowdfunding) for NewPascal in more professional way than current beer oriented donations : http://newpascal.org/about.html

btw. NewPascal got updated few hours ago ( http://newpascal.org/download.html / https://github.com/newpascal/newpascal/releases/tag/np-v1.0.55 ).
Checkout NewPascal initiative and donate beer - ready to use tuned FPC compiler + Lazarus for mORMot project

best regards,
Maciej Izak

Laksen

  • Hero Member
  • *****
  • Posts: 603
    • J-Software
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #21 on: May 07, 2018, 11:35:35 am »
This is the kind of stuff that should have been focused on a long time ago IMO, instead of stuff literally nobody cares about at all... (Seriously, what's with all the i8086 compiler target commits in the trunk recently? What a completely pointless waste of time.)

As has been said many times anything that goes on in fpc is made by volunteers in their own time and not steered by a project lead or any milestones

Adding a 8086 back-end does nothing but make the entire back-end pipeline more applicable to other new architectures without affecting anything else

So a win for just about everyone

Changing stuff in the front end on the other hand has a tendency to affect everyone so it has to be done really carefully so you can keep trusting fpc to be a high quality compiler

bee

  • Sr. Member
  • ****
  • Posts: 347
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #22 on: May 08, 2018, 03:36:21 am »
As has been said many times anything that goes on in fpc is made by volunteers in their own time and not steered by a project lead or any milestones.
Indeed. However, leadership and management is still required though, it's a project after all. Leadership is required to maintain the vision of the project and management is required to keep the project on the track. That's why some other voluntary-based open source projects have some kind of a board like in a company. I think both FPC and Lazarus lack of true leadership and management, but more on seniorship and skill. If you've been with FPC long enough or you contribute lots of code to FPC, then you got some respects. It needs more than that to keep these huge projects go well with time and new people.

Changing stuff in the front end on the other hand has a tendency to affect everyone so it has to be done really carefully so you can keep trusting fpc to be a high quality compiler
A high quality compiler is not only talking about stability and performance, but also about features. Turbo Pascal is really a high quality compiler, technically speaking, but it's useless because it doesn't provide many features of modern programming.

There are 2 kind of ways of thinking in technology:
1. Backward compatible, is to keep new features always operatable on past or old technologies, no matter the cost including sacrificing new technologies.
2. Forward compatible, is to keep new features always ahead of past or old technologies, no matter the cost including sacrificing old technologies.

Each has its own dis/advantages. I think FPC is on the first one. I hope NewPascal to be on the second one. I personally prefer the second one. As Izak promised to work on NewPascal based on FPC's master repo, then we got the best of both world. I don't know if Izak would or could keep his promises, but it's good enough for me to switch to NewPascal once it goes public and stable.

@hnb:
FPC just released new "default namespace" feature. It's not actually a new feature in modern programming because many other languages had provided it long before Pascal. And it also had been requested many times since long time ago. But at least Pascal has it too now, finally. I hope it will go to NewPascal as well.
-Bee-

A long time pascal lover.

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 6534
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #23 on: May 08, 2018, 07:05:07 am »
As has been said many times anything that goes on in fpc is made by volunteers in their own time and not steered by a project lead or any milestones.
Indeed. However, leadership and management is still required though, it's a project after all. Leadership is required to maintain the vision of the project and management is required to keep the project on the track. That's why some other voluntary-based open source projects have some kind of a board like in a company.

Like? Usually such structure only comes when donations or sponsors are high enough to actually have resources to direct.
 

hnb

  • Sr. Member
  • ****
  • Posts: 253
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #24 on: May 08, 2018, 12:22:41 pm »
I don't know if Izak would or could keep his promises, but it's good enough for me to switch to NewPascal once it goes public and stable.

I will do what I can best. NewPascal is already used for 24h servers and all works fine, every release is checked (full tests suite with FPC tests and mORMot). NewPascal is public - maybe not big page and effort for now but : Think Big, Start Small

btw. Izak is the surname ^^. The root of my surname is Isaksson.
Checkout NewPascal initiative and donate beer - ready to use tuned FPC compiler + Lazarus for mORMot project

best regards,
Maciej Izak

Chronos

  • Full Member
  • ***
  • Posts: 204
    • PascalClassLibrary
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #25 on: May 08, 2018, 01:06:16 pm »
Like? Usually such structure only comes when donations or sponsors are high enough to actually have resources to direct.

But then we have here a chicken egg problem again. There are no donations and sponsors because project is not big enough and project is not evolved significantly because there are no money to pay developers. So the usual answer that the feature XYZ can be implemented because it is a volunteer project and there are no resources to do that is simply not good for most of us. You can't get donations and sponsors overnight. But there can be an active effort to get there once. And nobody would say that it is an easy task. But without it, FPC and Lazarus will be still the same small limited projects for many years to come.

Handoko

  • Hero Member
  • *****
  • Posts: 2596
  • My goal: build my own game engine using Lazarus
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #26 on: May 08, 2018, 01:33:19 pm »
There are no donations and sponsors because project is not big enough and project is not evolved significantly ...

I personally think Lazarus and FPC are big enough to receive donations, the problem is in the efforts to attract donations.

For example in WordPress. They have a well-organized website, which all the plugins and themes will show the information about the plugin/theme like Ratings, Support, Reviews, etc, and most important the developer can have a donation link on that page. That useful info will make users more likely to donate some money. Not much, but I regularly donate some dollars to the plugins and themes I used.

See the example below:

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 6534
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #27 on: May 08, 2018, 02:41:36 pm »
Like? Usually such structure only comes when donations or sponsors are high enough to actually have resources to direct.

But then we have here a chicken egg problem again. There are no donations and sponsors because project is not big enough and project is not evolved significantly because there are no money to pay developers.

Maybe, but probably the area of the project is not popular enough to get to that size any which way.

Quote
So the usual answer that the feature XYZ can be implemented because it is a volunteer project and there are no resources to do that is simply not good for most of us. You can't get donations and sponsors overnight. But there can be an active effort to get there once. And nobody would say that it is an easy task. But without it, FPC and Lazarus will be still the same small limited projects for many years to come.

First, that still doesn't solve the governing problem, you can't assign volunteers, and not everybody can do all tasks.

Second,  all manpower that you theoretically could reassign will leaves holes elsewhere.

valdir.marcos

  • Hero Member
  • *****
  • Posts: 515
Re: NewPascal plans, Generics.Collections and FPC trunk
« Reply #28 on: May 08, 2018, 06:11:11 pm »
Like? Usually such structure only comes when donations or sponsors are high enough to actually have resources to direct.

But then we have here a chicken egg problem again. There are no donations and sponsors because project is not big enough and project is not evolved significantly because there are no money to pay developers.

Maybe, but probably the area of the project is not popular enough to get to that size any which way.
Quote
So the usual answer that the feature XYZ can be implemented because it is a volunteer project and there are no resources to do that is simply not good for most of us. You can't get donations and sponsors overnight. But there can be an active effort to get there once. And nobody would say that it is an easy task. But without it, FPC and Lazarus will be still the same small limited projects for many years to come.

First, that still doesn't solve the governing problem, you can't assign volunteers, and not everybody can do all tasks.

Second,  all manpower that you theoretically could reassign will leaves holes elsewhere.

I am talking to some friends so we can get some money to sponsor some new people (younger than 30, maybe college students) to solve some old annoying small bugs or some old missing small features.
We won't get enough money to pay experienced old programmers and even if we made it, we would take them from other important tasks.
There won't be enough money to pay for big new features, so we have to think about solving small problems that disturb our daily routine.
If there is a little more money, we would think of servers and knowhow for Continuous Integration (CI) for both FPC and Lazarus. This solution would became an actual example for everybody.
Maybe something similar to:
https://www.firebirdsql.org/en/snapshot-builds/
https://www.firebirdsql.org/en/server-packages/
https://www.firebirdsql.org/en/development/


 

Recent

Get Lazarus at SourceForge.net. Fast, secure and Free Open Source software downloads Open Hub project report for Lazarus