Recent

Author Topic: The future of Free Pascal  (Read 228489 times)

Graeme

  • Hero Member
  • *****
  • Posts: 1428
    • Graeme on the web
Re: The future of Free Pascal
« Reply #240 on: March 20, 2017, 11:45:07 pm »
Maybe that’s true, but the fact that many people use JAVA or buy a certain book or do whatever doesn’t mean that this has something to do with quality. More often it’s the other way around…
Normally (but not always) quality comes from a lot of people using a product. Having millions of developers working with Java, and 100’s developing it definitely adds to Java’s quality. The massive eco system, and 3rd party support in very very impressive too.

Quote
I really don’t know why they don’t create at least some kind of backward compatibility. Maybe they are not smart enough…
I can’t speak for C++ or DotNet, but Java’s backward compatibility is once again very impressive. Just recently I used Java class files (I don’t have the *.java files any more) in a new program. Those original class files were written and compiled around 2002-2004, and they still worked with my program compiled in 2017, using the latest JDK!! If that’s not good backwards compatibility, then I don’t know what is. Either way, you can’t do that with FPC’s *.ppu or Delphi *.dcu files.

But then, I didn’t want to get into a Programming Language pissing contest. I simply posted about Java as a joke. I really do like Object Pascal and Java though, and use them daily in my paying work.
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

Artlav

  • New Member
  • *
  • Posts: 36
    • Orbital Designs
Re: The future of Free Pascal
« Reply #241 on: March 21, 2017, 12:07:27 am »
Like in D7? Sorry, couldn't resist  :D
Not quite.
In D7 windows are made out of a block of tabbed editor, code browser and message area, which means that i only have 2 visible windows to deal with - the top bar and the stack of editor windows.
More precisely, it is capable of a middle ground between all docked and all separate.

Plus, the way Windows handle windows, it all shows as one window on taskbar instead of filling the entire thing as Lazarus does.

In Lazarus the editor bookmarks are global for all files, not local for each file like in Delphi.
That's rather neat.
Which actually raises a question - is there a list somewhere of all these small differences?

Just recently I used Java class files (I don’t have the *.java files any more) in a new program. Those original class files were written and compiled around 2002-2004, and they still worked with my program compiled in 2017, using the latest JDK!!
What sort of dependencies did these class files have?
A .class file is like an .o or .dll file, and the bytecode haven't been changed in decades, so if they are reasonably self-contained i won't be surprised to see them work.

RAW

  • Hero Member
  • *****
  • Posts: 868
Re: The future of Free Pascal
« Reply #242 on: March 21, 2017, 12:40:57 am »
Quote
I simply posted about Java as a joke.
Yeahh, I know...  :)

I can't remember the last time I used a program that requires JAVA RUNTIME, I just hate this never-ending C++/DotNet-PackageInstallBullshit. A little bit more and I got a lot more Packages than normal software... grrrrr...
Especially with C++2008 and not even a good and useful Error-Message that I or anybody else can understand...  >:(
I see a lot of posts in other forums about this ugly topic...

I hate it when I see a nice program and that program needs DotNet 4.5 for example... Then I always think "Hey why can't you use OBJECT PASCAL or FREE PASCAL or maybe C..."
Windows 7 Pro (x64 Sp1) & Windows XP Pro (x86 Sp3).

Artlav

  • New Member
  • *
  • Posts: 36
    • Orbital Designs
Re: The future of Free Pascal
« Reply #243 on: March 21, 2017, 02:20:21 am »
Ran into another problem with Lazarus.
When you have a source file behind a symlinked directory, then the IDE will open the file in it's linked name when an error pops up, but will open it in the place the link points to during debugging - two different tabs of the same file!
That's nearly a show-stopper level of annoying.

Anyone know how to fix this?

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4459
  • I like bugs.
Re: The future of Free Pascal
« Reply #244 on: March 21, 2017, 10:10:00 am »
That's nearly a show-stopper level of annoying.
That may be a little exaggerated.

Quote
Anyone know how to fix this?
Symlink handling has improved in trunk. See:
 http://bugs.freepascal.org/view.php?id=31260
Please test and report back.
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

Artlav

  • New Member
  • *
  • Posts: 36
    • Orbital Designs
Re: The future of Free Pascal
« Reply #245 on: March 21, 2017, 11:35:45 am »
Symlink handling has improved in trunk. See:
 http://bugs.freepascal.org/view.php?id=31260
Please test and report back.
Tried out the latest SVN.
No difference at all.

Situation:
In /domain/prg/gr/scatter/src we have:
scatter.lpi
scatter.pas
ogla -> /domain/prg/baselib/ogla

In the IDE in scatter.pas i ctrl-click on a function from a file from ogla.
The tab opens, with path of /domain/prg/gr/scatter/src/ogla/raleygpu.pas

Now i set a breakpoit and run it.
It reaches the breakpoint and opens a new tab with (2) added to it's name and /domain/prg/baselib/ogla/raleygpu.pas as the path.

Now, let's say i close the first tab and keep only the one the debugger opened.
I run the program, and suddenly i have a breakpoint trigger where there is none.

If i try to type in the debugger's tab and make an error, then on compile the first tab will re-open with the error highlighted.
If i change it in the first tab, i would get a "reload changes from disk" dialog.

Am i missing something, or should i make a bug report for this?

That may be a little exaggerated.
Random breakpoints that you can't remove because it was set in another version of the file?
Duplicate tabs all the time over the place?
Constantly asking about reloading changes from disk?

Pretty darn annoying.

Graeme

  • Hero Member
  • *****
  • Posts: 1428
    • Graeme on the web
Re: The future of Free Pascal
« Reply #246 on: March 21, 2017, 12:28:49 pm »
I can’t remember the last time I used a program that requires JAVA RUNTIME,
I actually use a lot of Java based programs here. UMLet, jEdit, Eclipse IDE, trolCommander etc. Installing the JRE (actually the JDK - just in case) is one of the first things I do after a new OS install.

Quote
I just hate this never-ending C++/DotNet-PackageInstallBullshit.
DotNet is totally pointless for me. It’s a bad ripoff of Java, since SUN sued Microsoft all that years ago.
  • First off, I don’t run Windows period! DotNet is not portable like JAVA.
  • Secondly, I believe only the Windows and OSX installs of Oracle JRE hound you constantly with updates - like they do for all other things too, not just JAVA. I run FreeBSD and only install updates when I feel the need.
  • Thirdly - I can’t remember when a Java program told me it can’t run, and that I need to install a updated JRE. When I install a OS + JRE, I always install the latest JRE at the time, currently that is v1.8, and it has excellent backwards compatibility.


Quote
I hate it when I see a nice program and that program needs DotNet 4.5 for example… Then I always think “Hey why can’t you use OBJECT PASCAL or FREE PASCAL or maybe C…”
My issue with Java for years has been memory consumption. But these days I made peace with that. What modern PC doesn’t come standard with 8GB or RAM anyways? My desktop system has 32GB RAM and my laptop has 16GB RAM.

Saying that, I have recently seen a YouTube video where a guy debunks a lot of Java Myths. He managed to run a JVM with a small desktop application in less than 5MB or RAM. Obviously the more 3rd party libraries you include in your application, the memory consuption goes up. This guy also showed that you can run Java ME with less than 1MB of RAM (and some other embedded specific JVM with less than 20KB of RAM). Hell, even the Raspberry Pi v1 came out with 512MB RAM, and my phone has 4GB RAM.

As for speed, it should be well known that Java is no slouch these days. My recent tests (seen in the Graphics section of this forum) shows that my Java executable ran circles around the FPC based executable, and even a C executable.

As for security. The Java security issues that made so many headlines were mainly down to the Java Plugin used by web browsers. Java itself is very secure.
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11382
  • FPC developer.
Re: The future of Free Pascal
« Reply #247 on: March 21, 2017, 12:36:00 pm »
I can’t remember the last time I used a program that requires JAVA RUNTIME,
I actually use a lot of Java based programs here. UMLet, jEdit, Eclipse IDE, trolCommander etc. Installing the JRE (actually the JDK - just in case) is one of the first things I do after a new OS install.

I think since Libre Office no longer requires it, I only use MP LabX which is a NetBeans derivate.

Quote
Quote
I just hate this never-ending C++/DotNet-PackageInstallBullshit.
DotNet is totally pointless for me. It’s a bad ripoff of Java, since SUN sued Microsoft all that years ago.

DotNet got many things right (like mandatory JIT, generics, nullable types and autoboxing) that a sleeping Java fixed only in 1.5 and after. It's interoperability with native code is better/easier too. (pinvoke vs jni)

But most importantly I like .NET as a platform much more than Java with its keep everything at arms length attitude. Java might be fine for enterprise heterogeneous apps, but for small and medium biz, I think the .NET eco system is actually better

(disclaimer I abandoned these kinds of languages in 2005, might have changed since)

« Last Edit: March 21, 2017, 01:09:02 pm by marcov »

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4459
  • I like bugs.
Re: The future of Free Pascal
« Reply #248 on: March 21, 2017, 12:40:35 pm »
Am i missing something, or should i make a bug report for this?
This debugger issue seems different from the issue in bug tracker. I think it should be reported.
Further possible forum discussion about the subject should happen in a new thread. This thread is supposed to be about "the future of Free Pascal" but actually contains other things.
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

jacmoe

  • Full Member
  • ***
  • Posts: 249
    • Jacmoe's Cyber SoapBox
Re: The future of Free Pascal
« Reply #249 on: March 21, 2017, 12:59:41 pm »
Java is terrible!

The syntax is verbose, the libraries huge, ..

I remember around 2000 when Java was really hot, and new multi-volume books about it came out every year - you bought one, and it was already out of date, ..

Years later, and .NET was the new hot, with huge books that instantly became outdated when they were published..

The .NET family of languages, especially C#, is really a much better Java.
Sadly, it requires a runtime, and it is a hassle to have to deal with assemblies - they are even more cumbersome than regular DLLs! Horrible!

I blame .NET and Hejlsberg and Microsoft - they stole the Borland engineers, remember? for the fact that it is not Delphi and Object Pascal that dominates today.

Yes, .NET is fast and Java is quite close to be just as fast, but the runtime!

.NET is open source, Mono has been for years, and now Microsoft themselves opened up the rest of it, so it is much better than Java, that still suffers from being choked by a corporate entity (Oracle).
Remember the recent vulnerabilities, and just how slow they dealt with it?

I am a Linux guy, and I would actually reach for .NET before reaching for Java.

However, I like native code, and I like small and nimble executables.
C is much better than C++ in that regard, but Free Pascal is actually better.  ;D

Disclaimer:
I like my languages small.
Thus I do prefer PHP to Node.js, C to C++, and - in the end: .NET to Java.
« Last Edit: March 21, 2017, 01:02:06 pm by jacmoe »
more signal - less noise

BeniBela

  • Hero Member
  • *****
  • Posts: 905
    • homepage
Re: The future of Free Pascal
« Reply #250 on: March 21, 2017, 01:44:54 pm »

My issue with Java for years has been memory consumption. But these days I made peace with that. What modern PC doesn’t come standard with 8GB or RAM anyways? My desktop system has 32GB RAM and my laptop has 16GB RAM.

My laptop has 4gb

i have huge issues running firefox, java ide and javac.

everyrthing freezes

Artlav

  • New Member
  • *
  • Posts: 36
    • Orbital Designs
Re: The future of Free Pascal
« Reply #251 on: March 21, 2017, 01:49:25 pm »
This debugger issue seems different from the issue in bug tracker. I think it should be reported.
Ok, submitted - http://bugs.freepascal.org/view.php?id=31577

Graeme

  • Hero Member
  • *****
  • Posts: 1428
    • Graeme on the web
Re: The future of Free Pascal
« Reply #252 on: March 21, 2017, 05:15:35 pm »
Java fixed only in 1.5 and after.
To be fair, Java 1.5 is a very long time ago. Yes there was a slowdown of Java development for a while (SUN exiting, Oracle finding its feet), but nowadays Java language progress is going very strong.

Quote
…but for small and medium biz, I think the .NET eco system is actually better
And with that decision you can’t target Linux, FreeBSD or OSX. So you are cutting out a huge chunk of potential business.

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

jacmoe

  • Full Member
  • ***
  • Posts: 249
    • Jacmoe's Cyber SoapBox
Re: The future of Free Pascal
« Reply #253 on: March 21, 2017, 05:20:32 pm »
What kind of .NET are you referring to?

.NET core:
https://www.microsoft.com/net/core/platform

.NET framework:
http://www.mono-project.com/

For all platforms.
« Last Edit: March 21, 2017, 05:22:36 pm by jacmoe »
more signal - less noise

Graeme

  • Hero Member
  • *****
  • Posts: 1428
    • Graeme on the web
Re: The future of Free Pascal
« Reply #254 on: March 21, 2017, 05:28:47 pm »
Java is terrible!
The syntax is verbose, the libraries huge, ..
Then we agree to disagree. ;)  The more I use Java, the more I like it. As for syntax, I think Object Pascal is way more verbose. In java you don’t have to duplicate class method definitions (like in Object Pascal in the Interface section and the Implemenation seciton). Object Pascal is simply C/C++’s .c and .h rolled into one. Java simply said  - you don’t need to duplicate method definitions.

The libraries are huge, simply because they implement everything under the sun. I don’t think there is anything you can think of that somebody hasn’t already implemented in Java. You can’t say that about Object Pascal. Also if you don’t use every single class under the sun in your application, your applications end up being very small.

Note:
  Java still has 4K competions (remember those from the 90’s, but then using Assembler). If you don’t
  know what I’m talking about, it is competitions where the applications or demos must be smaller
  than 4KB in size. It is incredible how much functionality they can achieve with a 4KB java executable.
  You can’t do that with Object Pascal. ;)


Quote
I am a Linux guy, and I would actually reach for .NET before reaching for Java.
Who actually writes Mono applications? I’ve never seen any job adverts for that either. As for a Mono application, I think in all my years I’ve only seen and used one Photo Manager application under Linux - many many years ago. Also you can’t target OSX with Mono or .NET, but you can with Java.

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

 

TinyPortal © 2005-2018