Skip to content

fifth-postulate/functional-geometry-in-prolog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Functional Geometry in Prolog

This project contains an exploration of the ideas found in the paper "Functional Geometry" by Peter Henderson, transposed to Prolog.

Functional Geometry

I learned about the paper and it's contents in a workshop by Einar Høst called: Escher in Elm.

It is a wonderfull workshop that clearly explains the ideas of functional geometry. I.e.

that one could write an algebraic description, embed it in a functional program, and execute it directly

Prolog

These ideas can be expressed in various other languages as Einar Høst and others have shown. Examples include F#, PostScript and Rust.

This repository explores the ideas in Prolog.

Prolog seems well-suited to express the ideas of functional geometry.

Usage

Start SWI-Prolog and load the geometry.pl file with the following command.

swipl geometry.pl

At the query prompt enter the following query.

escher(2, C), processTo('output.svg', C).

Where output.svg is the file you want to write the result to.

Eschers level 2 Square Limit by Prolog

About

Functional Geometry in Prolog

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages