#2715 Is F4 IDE dead?

Ilove:= Sat 3 Nov 2018

It's in ver 1.1 for a long time but no new release nor updates, and still using eclipse 4.6 as base. On Windows, it has problem with Zulu Jdk : it use 2x memory compared with Oracle Jdk. Other Java apps don't affected, Pixelitor image editor run fine with small footprint under Zulu Jdk. Sometime, the whole IDE hangs for a while when building workspace (problem started when my projects become many and big in size).

SlimerDude Sat 3 Nov 2018

While Xored Inc originally created F4, I confess to personally developing the large v1.1 update the other year that brought the project out of stagnation.

Earlier this year I did some work on a v1.1.2 release, these are the pull requests:

As I'm not an admin on the F4 GitHub project (and I don't work for Xored) I can't create or publish updates and releases. I did ask Xored to publish the v1.1.2 release at the time, but they were on holiday. I didn't ask or remind them again because I wanted to first make some adjustments to this fix - which I never got round to.

still using eclipse 4.6

My v1.1.2 still uses Eclipse 4.6 Neon. Xored are the real Eclipse experts so I defer to them for making updates to the platform. But as 4.6 can't run on Java 9, it would be nice if F4 were updated in this respect.

it has problem with Zulu Jdk

I can't comment as I've never tried it, but I suspect F4 would herald better results if the underlying eclipse platform were to be updated.

Sometime, the whole IDE hangs for a while when building workspace (problem started when my projects become many and big in size)

Yes. F4 has always suffered from project build thrashing. (Cutting down on the number of open projects can help.)

This is one of the big enhancements to v1.1.2. I made many optimisations and changes to v1.1.2 that drastically cuts down on the project build thrashing and, in the 6 months I've been using it, I've not had F4 hang on me since. Sometimes opening and closing a project (with 50+ pod dependencies) may be a bit slow, but nothing disastrous.

In terms of the future development of the F4 IDE, the problem that I (personally) have is that it's based on the Eclipse Dynamic Languages ToolKit (DLTK). Not that DLTK is bad, but it's codebase (as well as the entire eclipse platform) is HUGE. Everything is abstracted, loosely coupled, and the documentation is sparse at best. So when looking at problems, even if I can figure out where to start looking, I very easily get lost. And given all the original developers have since moved on from Xored, there's no one to ask either. :(

This is probably a longer answer than you wanted, but it hopefully explains where the F4 project is at.

Ilove:= Sat 3 Nov 2018

I understood, thanks. What about a fork or custom build of F4 with SlimerDude label? :) The project's git repo last updated since 2016, it's 3 years.

SlimerDude Sat 3 Nov 2018

I believe Xored will be happy to continue releasing my F4 updates (as they did a massive amount of work and a great job on F4 in the first place), I just need to prod them a bit more. ;)

In the mean time, these are my GitHub branches:

If you want to try out my updates, I've just re-built my branch and uploaded them here:

Jay Herron Mon 5 Nov 2018

Great discussion - I was about to post something similar late last week, highlighting the same concerns. F4 is by far my favorite Fantom IDE, but it would be really nice to run it on newer versions of Java. It's also good to hear that Xored is responsive to pull requests, I may start trying to make a few contributions.

KevinKelley Mon 5 Nov 2018

Yes, thanks for those, Steve, this is cool and useful.

Andrey Zakharov Thu 8 Nov 2018

Is it works? It doesnt build anything in imported project and doesnt want to debug it.

SlimerDude Thu 8 Nov 2018

It doesnt build anything in imported project

That seems odd.

Where do you expect the pods to be built to?

What settings do you have in the F4 Env and Compiler settings?

What do you see in the Fantom Build Console?

Fantom Build Console

Ilove:= Mon 11 Feb 2019

I think you should push them more SlimerDude, or think about a fork as new mainstream since xored's seemed to be completely abandoned, no people answer to pull request or bug reports anymore.

Edit: I think I should use "upstream" rather than "mainstream". I still confused between the two.

Ilove:= Tue 14 May 2019

I found something named LiClipse. As I know LiClipse is commercial but LiClipseText is free and we could install LiClipseText ontop of normal Eclipse Platform Runtime package. I saw here: http://www.liclipse.com/text/supported_languages.html

Ilove:= Tue 14 May 2019

So what about adding Fantom support to LiClipseText? F4 is completely dead and SlimmerDude's fork has not updated for 12 months. Someone with XML knowledge could give it a try. Or at least Steve, let's release a new version of your F4 fork with just the updated Fantom 1.0.72 interpreter, so people will know F4 is still being updated.

Scott P. Wed 24 Mar

I would expect a lot of abstractions from JetBrains as well but perhaps a (paid?) plugin to their IDEs would be worth considering. Eclipse hasn't aged well one could say.

JetBrains IDEs and VisualStudio likely represent over 90% of the market (not including Apple development).

The proposed work is significant and likely thankless for the most part. It's easy to ask other people to devote their time to such tasks but when it comes offering up your own time, people quickly vanish.

How about a GoFundMe? Anyone interested?

SlimerDude Thu 1 Apr

Hello Scott,

The proposed work is significant and likely thankless for the most part.

Thanks for recognising that - not everyone does.

I think the scale of development of a new IDE is so large, that it would need to be undertaken by a company with a commercial interest in the end result. By that, I mean they produce it for their own use, and let others use it / open source it.

That is pretty much how F4 was created in the first place, Xored Inc created it for themselves - but they have since moved away from Fantom development.

I often ponder about a Visual Studio language server but, for myself, F4 works really well (despite being a bit clunky sometimes) - so the idea is at the bottom of an extensive TODO list.

Until then, the latest F4 can be found on GitHub:

F4 v1.1.4 - https://github.com/xored/f4/releases

Scott P. Mon 5 Apr

Xored Inc created it for themselves - but they have since moved away from Fantom development.

That's basically reinforces the mental model I had for things in my head. Fantom as a product (SkySpark / FIN Framework) is an aging / crumbling monolith with little to no corporate investment in modernization / evolution.

I hope that SkySpark / FIN Framework follows a similar path to Xored and abandons Fantom. I don't see that happening though because it seems to have mutated into a two headed beast where one head is all about skill-set lock-in and the other a sales funnel (for: training, libraries, infrastructure); perfect for companies looking to code camp.

I am mentally preparing for a long journey using non-optimal tools and libraries.

SlimerDude Wed 7 Apr

Hi Scott,

You sound quite frustrated, and I can only sympathise with your current situation.

Yes, Fantom does lack investment from corporate giants, so will never compete with the likes of C# or Java. But I would argue that, as a software language, Fantom is far better for it.

Fantom being small and approachable is one of the many reasons that brought me here. The concise API and readable syntax means I can be a lot more expressive with less code without being overly reliant on an IDE. I do have to write a lot of libraries myself - but I find it much more fulfilling than writing glue code (the alternative).

As a newcomer to the building automation / analytics industry I too have noticed many insular, inward looking companies attached to it. SkySpark is a complicated technology stack and firms do want to retain their investment in it. But coming from a pure software development background, I see this as counter productive to all involved.

Which is why I'm trying to foster more open source products and free code sharing on StackHub, and why my own company, Fantom Factory is aimed at specifically de-mystifying SkySpark technology by providing quality and engaging training for all (and written in Fantom!).

If there is anything you feel that myself, or my company, could help you with - feel free to reach out.

Best regards, Steve.

Login or Signup to reply.