Functional Core, Imperative Shell
GPTKB entity
Statements (22)
Predicate | Object |
---|---|
gptkbp:instanceOf |
gptkb:architecture
|
gptkbp:alsoKnownAs |
gptkb:FCIS
|
gptkbp:citation |
Gary Bernhardt's talk 'Boundaries'
|
gptkbp:contrastsWith |
monolithic imperative code
|
gptkbp:describes |
separation of pure and impure code
|
https://www.w3.org/2000/01/rdf-schema#label |
Functional Core, Imperative Shell
|
gptkbp:introducedIn |
2012
|
gptkbp:popularizedBy |
gptkb:Gary_Bernhardt
|
gptkbp:presentedBy |
gptkb:CodeMash_2012
|
gptkbp:principle |
functional core is pure and deterministic
imperative shell handles side effects |
gptkbp:promotion |
maintainability
separation of concerns testability |
gptkbp:relatedTo |
functional programming
imperative programming clean architecture hexagonal architecture |
gptkbp:usedIn |
software engineering
functional programming |
gptkbp:bfsParent |
gptkb:Destroy_All_Software
|
gptkbp:bfsLayer |
8
|