Hacker News new | ask | show | jobs
by nailer 4254 days ago
Blueprint, the default UE4 language, seems functional. All functions are pure functions, with input and output, not methods, there's no 'self' or 'this'.

That said, I'm not an expert on Blueprint or FP so maybe someone who knows more can tell me whether that assessment is accurate.

(And I totally understand that some people will prefer F# and access to all those .net classes anyway)

3 comments

That's not true at all, There is indeed a "self", and nearly all functions are executed in a context with a valid self.

Additionally, there are plenty of nodes such as "Get Player Controller by index" which allows the user to access and modify global state.

There is a "pure" option to check on a particular function, but the language itself makes no checks as to the validity of this, it just allows the execution engine to make assumptions.

Ah interesting re self - how did you find out about that?
I wouldn't say it was pure, since a lot of the commands have side effects. Probably more accurate to say that it's a powerful flow-based language with a graphical representation.
Blueprint is essentially a C++ Framework API that you interact with using a GUI