Yet another scripting language
  • Pascal 93.3%
  • js 6.3%
  • JavaScript 0.3%
Find a file
2026-05-01 17:10:39 +02:00
bin More work 2025-04-11 16:44:44 +02:00
docs More work 2026-02-20 03:13:16 +01:00
examples More work 2026-02-21 10:15:45 +01:00
externals More work 2026-01-14 06:56:11 +01:00
src More work 2026-02-20 03:05:25 +01:00
tests Add regex tests 2025-12-01 19:31:08 +01:00
vscodeext More work 2025-11-03 01:16:09 +01:00
.gitattributes Added .gitattributes 2025-04-02 16:26:34 +02:00
.gitignore Add bin/poca to .gitignore 2025-04-06 12:58:25 +02:00
.gitmodules GIT stuff 2026-05-01 16:49:25 +02:00
gitcommitpush Added externals and scripts 2025-04-03 11:53:02 +02:00
gitcommitpush.bat Updated gitcommitpush.bat 2025-04-03 12:22:21 +02:00
gitforceupdate Added externals and scripts 2025-04-03 11:53:02 +02:00
gitforceupdate.bat Added externals and scripts 2025-04-03 11:53:02 +02:00
initsubmodules Added externals and scripts 2025-04-03 11:53:02 +02:00
initsubmodules.bat Added externals and scripts 2025-04-03 11:53:02 +02:00
LICENSE Add LICENSE 2016-07-02 12:25:13 +02:00
Makefile Silence make test; update tests TODO 2025-11-28 15:49:18 +01:00
README.md Add primary repository notice to README 2026-05-01 17:10:39 +02:00
updatesubmodules Added externals and scripts 2025-04-03 11:53:02 +02:00
updatesubmodules.bat Added externals and scripts 2025-04-03 11:53:02 +02:00

Important

The primary repository has moved to git.rosseaux.net/BeRo1985/poca. This GitHub repository is kept up-to-date via push mirroring.

POCA

Yet another scripting language that is still in the design phase - for example, its syntax and built-in standard library are not finalized yet.

Documentation

You can also find many short examples of language features and various POCA idioms in the examples directory.

Dependencies

To build POCA the following dependencies are required:

  • FLRE for its regular expression support
  • PUCU for its Unicode strings and conversions
  • PasMP for its multithreading support
  • PasJSON for its JSON support
  • pasdblstrutils for its double-precision floating point number and string conversion support

Compilation

Either Delphi >= 7 or FreePascal >= 3.0 is required to build POCA.

Here's how to clone the repo and build POCA using the FreePascal compiler:

# clone
git clone https://github.com/BeRo1985/poca.git

cd poca

# clone dependencies
git submodule init
git submodule update --remote --recursive

# build POCA directly using fpc
fpc -B -O3 -g -gl pocarun.dpr

# or build POCA using Lazarus (adapt the paths to your fpc and lazarus paths)
~/fpcupdeluxe/lazarus/lazbuild --pcp="${HOME}/fpcupdeluxe/config_lazarus" --os=linux -B src/pocarun.lpi

# run a script (ctrl-c to abort)
bin/poca examples/donut.poca

# run POCA's REPL (ctrl-c or ctrl-d to exit)
bin/poca

License

Zlib-licensed as per LICENSE file.