Sign up

ThingsPool

Not verified No WebSub updates No webmention support Not yet validated

A collection of essays and thought experiments, which cover a wide range of subjects including computer science, game design, logic, philosophy, and art.

Public lists
I ♥ RSS
Fetched

ThingsPool
Text

Game Programming in Prolog - Part 18

Prolog is a useful tool for developing a purely data-driven, ECS-like game engine. In this last volume, I will be illustrating the last remaining details of game development in Prolog, as well as how its design philosophy can help us shape the game into its own unified system of logic.

ThingsPool
Text

Game Programming in Prolog - Part 17

Prolog is widely known as a logic programming language, but it can also be used for developing a game. In this article, I will explain how the concept of transcompilation (from Prolog to a popular language such as C#) can be used to create a "virtual Prolog machine" which is optimized to run on personal computing devices.

ThingsPool
Text

Game Programming in Prolog - Part 16

How to design an efficient gameplay system in Prolog? Here is the answer. In this article, I will demonstrate some of the efficient search algorithms which can be leveraged to let us create a video game using Prolog's logic programming syntax.

ThingsPool
Text

Game Programming in Prolog - Part 15

Developing a Prolog game engine is a challenge, but it is worth the effort. In this article, I will be illustrating subtle aspects of relational database design and how they constitute the core of Prolog's query-based game logic.

ThingsPool
Text

Game Programming in Prolog - Part 14

Here is a basic algorithm for building a Prolog game engine. By leveraging the elegance of logic programming, this engine will let game developers design a wide range of gameplay systems using Prolog's declarative syntax.

ThingsPool
Text

Game Programming in Prolog - Part 13

Prolog offers us a new insight in the field of game programming. In this article, I will be explaining how some of the advanced gameplay features, such as status effects and passive abilities, can be designed in Prolog's beautiful symphony of logic.

ThingsPool
Text

Game Programming in Prolog - Part 12

Programming in Prolog offers us a new way of designing video games. In this article, I will illustrate the beauty of representing various in-game elements using Prolog's dynamic relations and their procedurally generated semantic data structures.

ThingsPool
Text

Game Programming in Prolog - Part 11

Prolog comes in handy when designing emergent gameplay systems. In this article, I will be explaining how abstract objects and their mutual interactions can be implemented in the language of Prolog.

ThingsPool
Text

Game Programming in Prolog - Part 10

Here is how to make a Prolog game. Using the logical syntax of Prolog, we can construct systems which enforce a wide range of complex rules based upon a simple set of declarative statements (similar to how a few differential equations can be used to describe complex physical phenomena). In this article, I will be explaining how the concept of birth and death are able to be expressed in Prolog's logic programming environment.

ThingsPool
Text

Game Programming in Prolog - Part 9

How to construct gameplay elements in Prolog? This article illustrates how a wide range of objects in a video game, such as actors and items, are able to be expressed in terms of logical relations.

ThingsPool
Text

Game Programming in Prolog - Part 8

How to design a gameplay system using Prolog? This part of the series explains the construction and destruction of actors, as well as how their types can be handled in a data-driven way. This will be one of the most essential mechanics of a Prolog-based game system.

ThingsPool
Text

Game Programming in Prolog - Part 7

In this article, I will demonstrate how to spawn new objects (actors) in Prolog and give them unique IDs. This feature will let us design dynamic gameplay agents with their own lifecycles.

ThingsPool
Text

Game Programming in Prolog - Part 6

This article explains how real-time gameplay systems can be created in the language of Prolog, based on a set of advanced concepts such as time-binding of relations, decomposition of discrete events, and compound symbols. This model of technical game design will be especially helpful for constructing highly emergent systems, such as ones which comprise the backbone of scientific simulation games (e.g. The Sims, SimCity, SimEarth, SimLife, etc).

ThingsPool
Text

Game Programming in Prolog - Part 5

In this article, I will explain how a variety of game mechanics can be designed and implemented in Prolog. The reader will learn that logic programming is an inexplicably powerful paradigm when it comes to creating a dynamic and emergent network of interactions inside the game world.

ThingsPool
Text

Game Programming in Prolog - Part 4

This article explains how to code in Prolog to make a game. By reading this, you will learn how the data-driven (declarative) grammar of Prolog will help developers create gameplay systems which are way more robust than their imperative counterparts, such as ones written in C++, C#, or Java.

ThingsPool
Text

Game Programming in Prolog - Part 3

This article explains how you can use the language of Prolog to develop a game. It leverages the built-in syntactic elegance of Prolog, as well as its data-driven and declarative design philosophy.

ThingsPool
Text

Game Programming in Prolog - Part 2

This article explains how a game can be made in Prolog by leveraging the hidden power of logic programming. Inspired by the elegance of data-driven design and declarative programming paradigms, I will be explaining a new way of designing gameplay systems which is way more robust, concise, and error-free than traditional methods.

ThingsPool
Text

Game Programming in Prolog - Part 1

This article explains how a game can be made in Prolog by leveraging the hidden power of logic programming. Inspired by the elegance of data-driven design and declarative programming paradigms, I will be explaining a new way of designing game rules which can at the same time be used as the source code of the gameplay system itself.

ThingsPool
Text

On Nodal Representation of Relations

How to express a relation in an undirected graph, without using hypergraphs or any other advanced concepts? This article explains a purely node-based method of representing any n-ary relations. This will be useful for implementing custom hardware for relational computing systems, such as an optimized Prolog interpreter.

ThingsPool
Text

Technical Design using Multi-State Machines

How to use state machine networks (multi-state machines) to design dynamics systems, including gameplay systems, industrial simulations, scientific applications, cellular automata, and many others.

ThingsPool
Text

Force-Exchange Network for Gameplay Systems

A new way of designing gameplay systems, based on a force-exchange network and functional force-vector transformation logic. This was inspired by the two-vector event model of Peter Gärdenfors (Professor at Lund University), as well as the emergent system architecture concepts invented by Glenn Puchtel (Principal software architect at GRUBBRR).

ThingsPool
Text

Books by Bernard Werber (베르나르 베르베르)

A review of French novelist, Bernard Werber (베르나르 베르베르), who is perhaps the most popular French science fiction writer in Korea. His novels, however, can also be classified as works of philosophical fiction, combined with spiritualist metaphors and non-mainstream humor.

ThingsPool
Text

Emergent Systems based on Glenn Puchtel's Biocybernetic Theory

This a new way of designing biology-inspired emergent systems, based upon Glenn Puchtel's biocybernetic theory. It encompasses the construction of artificial life, artificial mind, virtual ecosystems, wetware, and other nature-inspired phenomena, based on ideas such as Systems Thinking and Unconventional Computing.

ThingsPool
Text

Mathematical Interpretation of Hume's Philosophy

A mathematical interpretation of David Hume's philosophy.

ThingsPool
Text

Good and Evil

A computational interpretation of Good and Evil.

ThingsPool
Text

Game Design using Gärdenfors' Event Model

Possible usage of Peter Gärdenfors' two-vector event model in the design of gameplay systems.

ThingsPool
Text

Model of the Mind

A mathematical model of our own thoughts, feelings, and the sense of curiosity.

ThingsPool
Text

Game Design Concepts

A list of game design concepts.

ThingsPool
Text

Everything is in Vain!

About the vanity of the modern world.

ThingsPool
Text

Flatland: A Romance of Many Dimensions - by Edwin Abbott

A review of Flatland: A Romance of Many Dimensions by Edwin Abbott.