Live data from Hacker News

F18 Fortran compiler and runtime project is accepted as part of LLVM project

lists.llvm.org

31–34 of 34 posts

Re: F18 Fortran compiler and runtime project is accepted as part of LLVM project

#31
post #28

Earlier quoted context omitted.

I'm not sure that makes much sense;forth is typically a thin layer over a machine (historically physical, but also a VM, like the jvm) - so it'd generally make sense to implement the "compiler" is "assembler" (whatever that means for a given "machine")? A forth in forth that is a cross compiler or something, doesn't quite "feel" like a forth system? See also: https://www.forth.com/starting-forth/11-forth-compiler-def…

The article is about Fortran, not Forth.

Oh, thank you for pointing that out. Not sure how I missed that :)

Ed: now I'm kinda excited about an llvm forth...

Re: F18 Fortran compiler and runtime project is accepted as part of LLVM project

#32
post #22
post #21

Earlier quoted context omitted.

I'm not sure people used HLLs to write compilers at that time.

You just need to search for papers, quite a few available. In fact, during the 60's Algol variants were already being used to write compilers and OSes.

That's true. Not only compilers, but a lot of MCP was written in Algol.

Re: F18 Fortran compiler and runtime project is accepted as part of LLVM project

#33
post #7

> The board also recommends that f18 evaluate (over time) whether it is reasonably possible to eliminate the dependence on C++’17 features. Alright... > Using C++’17 is not a blocker for inclusion into the project, but will be a blocker for certain other infrastructure (e.g. build bots and integration into official releases), but those may or may not be relevant now given the early state of f18. C++'17 is too new for…

I saw here they have a document explaining which C++17 features they use and why: https://github.com/flang-compiler/f18/blob/master/documentat...

Yeah I would cry and quit if I was previously using those and then had to stop doing so.

Re: F18 Fortran compiler and runtime project is accepted as part of LLVM project

#34
post #26

Earlier quoted context omitted.

LLVM supports old platforms: some CI bots are targeting stable Debian, or Ubuntu 14.04. LLVM is currently moving to C++14, which is a pain for some users like TensorFlow for instance which supports Ubuntu 14.04: the c++ standard library is too old. There are technical solutions for everything but for a component like LLVM, not pressuring its users into convoluted workflow is important. Of course the LLVM developpers…

The bootstrapping policy and the capabilities of the CI infra should be decoupled. I'm not not arguing the the policy. In three years when LLVM bumps to C++'17 or whatever, then flang starts obeying. But also I personally think is fine for parts of the project not needed to build C++ to use newer C++. Just use the newly built clang to build flang!

This is ignoring that LLVM is first and before all designed as reusable libraries.

Bumping requirements is causing other problems than just being able to build with the just built compiler: namely deployment and integration in other products. For example, you may be forced to isolate components in dynamic library that talks with each others through C APIs and each statically link the C++ standard library. It can become fairly complicated when this does not fit your setup and you get forced into this because LLVM decided to bump their standard.

Post reply on HN