// Abstract ------------------------------------------------------------------------------------------------------------------------------

fizz is an experimental language and runtime environment for the exploration of cognitive architectures and combined Machine Learning (ML) and Machine Reasoning (MR) solutions. It is based primarily on symbolic programming and fuzzy formal logic and it features a distributed (eventually), concurrent, asynchronous and responsive inference engine.

// Samples -------------------------------------------------------------------------------------------------------------------------------

calc.fizz A simple 4 operations calculator (which can deal with a single variable)
chicken.fizz A chicken farmer also has some cows for a total of 30 animals, and the animals have 74 legs in all. How many chickens does the farmer have?
coloring.fizz Solves the classic coloring adjacent planar regions problem
english.fizz Tests or makes simple English sentences
factorial.fizz Calculates the factorial of a number
fixer.fizz Process data from api.fixer.io (as JSON) and import it as knowledge
fixer-pull.fizz Fetchs data from api.fixer.io (as JSON) and import it as knowledge
hanoi.fizz Solves the classic 'Tower of Hanoi'
iris.fizz Shows how a 'feed-forward neural network' can be used within fizz
knight.fizz Solves the 3x3 "knight" puzzle
leibniz.fizz Solves some mathematical problems (derivative, expression simplifying)
linneus.fizz Shows how a "conversation" around simple inferences on relational data can be created/managed
lists.fizz Collection of knowledges manipulating lists
lung_diagnosis.fizz Simple lung diagnosis expert system
manual.fizz Shows all examples used in the manual
motel.fizz Where should the doors and the windows be?
sensors.fizz Shows how a simple devices monitoring system could be written
shrink.fizz Simulates a 'Rogerian psychiatrist' (ELIZA)
sudoku.fizz Solves sudoku 2x2 puzzles
weather.fizz Fetchs data from openweathermap.org (as JSON) and import it as knowledge
zebra.fizz Solves the classic Houses logical puzzle: "who owns the zebra and who drinks water?"

// Articles ------------------------------------------------------------------------------------------------------------------------------

Building a simple stock market monitor with fizz pdf html (05/24/2018)
Importing and managing a large data set in fizz pdf html (05/24/2018)

// Documentation -------------------------------------------------------------------------------------------------------------------------

user manual pdf html (05/24/2018)

// Downloads -----------------------------------------------------------------------------------------------------------------------------

0.3.0-X fizz.0.3.0-X-LNX.tgz (05/24/2018) Linux (Intel and arm)
0.3.0-X fizz.0.3.0-X-OSX.tgz (05/29/2018) macOS 10.11+ (Intel)
0.2.0-X fizz.0.2.0-X.tgz (02/25/2018) Linux (Intel and arm)
0.1.4-X fizz.0.1.4-X.tgz (12/03/2017) Linux (Intel and arm)

// Last changes ---------------------------------------------------------------------------------------------------------------------------

Additions:- live code reload functionality
- new constant $cores
- new primitives: aeq, bundle, div.int, fzz.lst, lst.remove, mao.sign, str.find, str.flip, str.trim, str.rest, str.swap, sym.cat
- new console commands: /reload /import.txt
- new class FZZCWebAPIGetter
- macOS support
Changes:- increased the maximum number of threads that can be used by the console
- added support for str.find as a variable’s constraint
- primitive frm.fetch allows for a fourth term to specify a default value to use if the label isn’t found
- when the first term of the /peek and /poke console commands is a symbol, all elemental of that label will be targetted
- the fzz.eval service now accept a list as second term to describe the functor to be evaluated
- changed class FZZCTicker to support the property tick.on.attach
- changed class MRKCBFSolver to support the property replies.are.triggers
- changed class MRKCLettered to support the property nearest.only
Bug Fixes:- minor performance tweaks when parsing list in fizz source files
- primitive str.sub was not properly handling negative offset
- on occasion queries/replies where not being sent/received
- JSON support wasn’t handling ’null’ value (causing crash)
- chunked transfer encoding wasn’t supported by the builtin web client

// Future work ---------------------------------------------------------------------------------------------------------------------------

- More ML constructs (e.g. k-means clustering) - Completed distributed infering
- Depth-first solver - Some examples of cognitive architectures implementation
- Builtin NLP - More tutorials

// Other similar projects you should most definitely check out ---------------------------------------------------------------------------

OpenCog Soar ACT-R NARS Premise

// ---------------------------------------------------------------------------------------------------------------------------------------

[Credits] [Email] [Twitter] [LinkedIn]