
Research
Security News
The Growing Risk of Malicious Browser Extensions
Socket researchers uncover how browser extensions in trusted stores are used to hijack sessions, redirect traffic, and manipulate user behavior.
Flitter is a functional programming language and declarative system for describing 2D and 3D visuals
Flitter is a functional programming language and declarative system for describing 2D and 3D visuals. It is designed to encourage an iterative, explorative, play-based approach to constructing visuals.
The language supports the basic range of functional language features: first-class recursive and anonymous functions, comprehensions, let/where, conditional expressions, lists ("vectors"). However, unusually, all values are vectors and all operators are element-wise, and the language is built around constructing trees of attributed nodes. The language is designed to be familiar to Python programmers.
The engine is able to live reload all code and assets (including any shaders, images, videos, models, etc.) while retaining the current system state - thus supporting live-coding. It also has support for interacting with running programs via MIDI surfaces (plus basic pointer and keyboard support).
Flitter is implemented in a mix of Python and Cython and requires at least
OpenGL 3.3 (Core Profile) or OpenGL ES 3.0. At least Python 3.10 is also
required as the code uses match
/case
syntax.
Flitter is designed for expressivity and ease of engine development over raw performance, but is fast enough to be able to do interesting things.
The engine that runs the language is capable of:
Flitter also has a plug-in architecture that allows extension with new image and 3D mesh generators, MIDI and DMX interfaces, or completely novel input and output systems.
Flitter can be installed from the flitter-lang
PyPI
package with:
pip3 install flitter-lang
and then run as:
flitter path/to/some/flitter/script.fl
More details can be found in the installation documentation.
The documentation is available on Read the Docs.
There are a few quick examples in the main repository. However, there is also a separate repo containing many more interesting examples that are worth checking out.
Flitter is copyright © Jonathan Hogg and licensed under a 2-clause "simplified" BSD license except for the OpenSimplex 2S noise implementation, which is based on code copyright © A. Svensson and licensed under an MIT license.
FAQs
Flitter is a functional programming language and declarative system for describing 2D and 3D visuals
We found that flitter-lang demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover how browser extensions in trusted stores are used to hijack sessions, redirect traffic, and manipulate user behavior.
Research
Security News
An in-depth analysis of credential stealers, crypto drainers, cryptojackers, and clipboard hijackers abusing open source package registries to compromise Web3 development environments.
Security News
pnpm 10.12.1 introduces a global virtual store for faster installs and new options for managing dependencies with version catalogs.