diff --git a/lang/Makefile b/lang/Makefile index b8624503e1ed..b47244907bdd 100644 --- a/lang/Makefile +++ b/lang/Makefile @@ -1,405 +1,406 @@ COMMENT = Programming languages SUBDIR += abcl SUBDIR += alchemist.el SUBDIR += algol68g SUBDIR += amber SUBDIR += angelscript SUBDIR += antimony SUBDIR += apache-commons-jelly SUBDIR += asm-lsp SUBDIR += asn1c SUBDIR += atlast SUBDIR += awka SUBDIR += bas2tap SUBDIR += basic256 SUBDIR += bend SUBDIR += bsh SUBDIR += bwbasic SUBDIR += c SUBDIR += cairo SUBDIR += cbmbasic SUBDIR += ccl SUBDIR += ceylon SUBDIR += cfortran SUBDIR += chaiscript SUBDIR += chez-scheme SUBDIR += chibi-scheme SUBDIR += chicken SUBDIR += cim SUBDIR += cjs SUBDIR += cling SUBDIR += clips SUBDIR += clisp SUBDIR += clojure SUBDIR += clojure-mode.el SUBDIR += clover SUBDIR += cocor SUBDIR += coffeescript SUBDIR += colm SUBDIR += cparser SUBDIR += crumb SUBDIR += crystal SUBDIR += csharp-mode.el SUBDIR += cython SUBDIR += cython3 SUBDIR += dhall SUBDIR += dlang-tools SUBDIR += dotnet SUBDIR += dotnet-host SUBDIR += dotnet8 SUBDIR += duktape SUBDIR += duktape-lib SUBDIR += ecl SUBDIR += eisl SUBDIR += elixir SUBDIR += elixir-devel SUBDIR += elixir-mode.el SUBDIR += elk SUBDIR += elm SUBDIR += emacs-lisp-intro SUBDIR += emilua SUBDIR += erlang SUBDIR += erlang-doc SUBDIR += erlang-java SUBDIR += erlang-man SUBDIR += erlang-runtime21 SUBDIR += erlang-runtime22 SUBDIR += erlang-runtime23 SUBDIR += erlang-runtime24 SUBDIR += erlang-runtime25 SUBDIR += erlang-runtime26 SUBDIR += erlang-runtime27 SUBDIR += erlang-runtime28 SUBDIR += erlang-wx SUBDIR += execline SUBDIR += expect SUBDIR += f2c SUBDIR += fasm SUBDIR += fennel SUBDIR += ficl SUBDIR += fpc SUBDIR += fpc-devel SUBDIR += fpc-devel-source SUBDIR += fpc-docs SUBDIR += fpc-source SUBDIR += frawk SUBDIR += fsharp SUBDIR += fth SUBDIR += gambit-c SUBDIR += gauche SUBDIR += gawk SUBDIR += gcc SUBDIR += gcc11 SUBDIR += gcc12 SUBDIR += gcc12-devel SUBDIR += gcc13 SUBDIR += gcc13-devel SUBDIR += gcc14 SUBDIR += gcc14-devel SUBDIR += gcc15-devel SUBDIR += gcc6-aux SUBDIR += gforth SUBDIR += ghc SUBDIR += ghc810 SUBDIR += ghc92 SUBDIR += ghc94 SUBDIR += gir-to-d SUBDIR += gjs SUBDIR += gleam SUBDIR += gluon SUBDIR += gnat12 SUBDIR += gnat13 SUBDIR += gnatcross-binutils-aarch64 SUBDIR += gnatcross-sysroot-aarch64 SUBDIR += gnatdroid-binutils SUBDIR += gnatdroid-binutils-x86 SUBDIR += gnatdroid-sysroot SUBDIR += gnatdroid-sysroot-x86 SUBDIR += gnu-apl SUBDIR += gnu-cobol SUBDIR += gnustep-base SUBDIR += go SUBDIR += go-devel SUBDIR += go120 SUBDIR += go121 SUBDIR += go122 SUBDIR += go123 SUBDIR += go124 SUBDIR += gomacro SUBDIR += gprolog SUBDIR += gptscript SUBDIR += gravity SUBDIR += groovy SUBDIR += gscheme SUBDIR += guile SUBDIR += guile-aclocal SUBDIR += guile1 SUBDIR += guile2 SUBDIR += guile3 SUBDIR += halide SUBDIR += harec SUBDIR += haskell-mode.el SUBDIR += hermes SUBDIR += hla SUBDIR += hs-brainfuck SUBDIR += hs-futhark SUBDIR += hs-koka SUBDIR += hs-unlambda SUBDIR += huc SUBDIR += inko SUBDIR += intel-compute-runtime SUBDIR += intercal SUBDIR += io SUBDIR += io-devel SUBDIR += itcl SUBDIR += itcl4 SUBDIR += janet SUBDIR += jimtcl SUBDIR += jpm SUBDIR += jruby SUBDIR += julia SUBDIR += jython SUBDIR += kawa SUBDIR += kf5-kross SUBDIR += kotlin SUBDIR += kross-interpreters SUBDIR += kturtle SUBDIR += lafontaine SUBDIR += lci SUBDIR += ldc SUBDIR += lfe SUBDIR += lfortran SUBDIR += libhx SUBDIR += libobjc2 SUBDIR += librep SUBDIR += libstdc++_stldoc_4.2.2 SUBDIR += linux-c7-tcl85 SUBDIR += linux-dotnet-cli SUBDIR += linux-dotnet-runtime SUBDIR += linux-dotnet-sdk SUBDIR += linux-dotnet10-runtime SUBDIR += linux-dotnet11-runtime SUBDIR += linux-dotnet11-sdk SUBDIR += linux-j SUBDIR += linux-rl9-python3 SUBDIR += linux-rl9-tcl86 SUBDIR += lua51 SUBDIR += lua52 SUBDIR += lua53 SUBDIR += lua54 SUBDIR += luajit SUBDIR += luajit-devel SUBDIR += luajit-openresty SUBDIR += malbolge SUBDIR += maude SUBDIR += mawk SUBDIR += mdk SUBDIR += mecrisp-stellaris SUBDIR += micropython SUBDIR += mit-scheme SUBDIR += mixal SUBDIR += mlkit SUBDIR += mlton SUBDIR += mmix SUBDIR += mono SUBDIR += mono-basic SUBDIR += mono5.10 SUBDIR += mono5.20 SUBDIR += mono6.8 SUBDIR += mosh SUBDIR += mosml SUBDIR += mtasc SUBDIR += mujs SUBDIR += munger SUBDIR += myrddin SUBDIR += nawk SUBDIR += nbfc SUBDIR += neocmakelsp SUBDIR += nesasm SUBDIR += newlisp SUBDIR += nickle SUBDIR += nim SUBDIR += njs SUBDIR += nll SUBDIR += nqc SUBDIR += numbat SUBDIR += nwcc SUBDIR += nx SUBDIR += nyan SUBDIR += ocaml SUBDIR += ocaml-autoconf SUBDIR += ocaml-camlidl SUBDIR += odin SUBDIR += oo2c SUBDIR += opencoarrays SUBDIR += opensycl SUBDIR += ott SUBDIR += owl-lisp SUBDIR += p5-Data-JavaScript SUBDIR += p5-Error SUBDIR += p5-Expect SUBDIR += p5-ExtUtils-F77 SUBDIR += p5-Interpolation SUBDIR += p5-JSAN SUBDIR += p5-JavaScript-QuickJS SUBDIR += p5-JavaScript-Squish SUBDIR += p5-JavaScript-Value-Escape SUBDIR += p5-List-MoreUtils SUBDIR += p5-List-MoreUtils-XS SUBDIR += p5-Marpa SUBDIR += p5-Marpa-PP SUBDIR += p5-Marpa-XS SUBDIR += p5-Modern-Perl SUBDIR += p5-Perl6-Subs SUBDIR += p5-Promises SUBDIR += p5-Pugs-Compiler-Rule SUBDIR += p5-Quantum-Superpositions SUBDIR += p5-Scalar-List-Utils SUBDIR += p5-Switch SUBDIR += p5-Tcl SUBDIR += p5-Test-XPath SUBDIR += p5-Try-Catch SUBDIR += p5-Try-Tiny SUBDIR += p5-Try-Tiny-Retry SUBDIR += p5-TryCatch SUBDIR += p5-ePerl SUBDIR += p5-signatures SUBDIR += p5-v6 SUBDIR += pbasic SUBDIR += pcc SUBDIR += perl5-devel SUBDIR += perl5.36 SUBDIR += perl5.38 SUBDIR += perl5.40 SUBDIR += petite-chez SUBDIR += pfe SUBDIR += pharo SUBDIR += php-mode.el SUBDIR += php81 SUBDIR += php81-extensions SUBDIR += php82 SUBDIR += php82-extensions SUBDIR += php83 SUBDIR += php83-extensions SUBDIR += php84 SUBDIR += php84-extensions SUBDIR += picoc SUBDIR += picolisp SUBDIR += pkl SUBDIR += plexil SUBDIR += pocl SUBDIR += polyml SUBDIR += pomsky SUBDIR += prql SUBDIR += ptoc SUBDIR += purescript SUBDIR += py-dhall SUBDIR += py-hy SUBDIR += py-lupa SUBDIR += py-sly SUBDIR += py-textX SUBDIR += python SUBDIR += python-doc-html SUBDIR += python-doc-pdf-a4 SUBDIR += python-doc-text SUBDIR += python-mode.el SUBDIR += python-tools SUBDIR += python2 SUBDIR += python27 SUBDIR += python3 SUBDIR += python310 SUBDIR += python311 SUBDIR += python312 SUBDIR += python39 SUBDIR += qmasm SUBDIR += quickjs SUBDIR += quickjs-ng SUBDIR += quilc SUBDIR += racket SUBDIR += racket-minimal SUBDIR += ratfor SUBDIR += referenceassemblies-pcl SUBDIR += retro12 SUBDIR += rexx-imc SUBDIR += rexx-regina SUBDIR += rexx-regutil SUBDIR += rexx-wrapper SUBDIR += rhino SUBDIR += rizin SUBDIR += rizin-cutter SUBDIR += ruby32 SUBDIR += ruby33 SUBDIR += ruby34 SUBDIR += ruby35 SUBDIR += rubygem-rb_sys SUBDIR += rubygem-ruby_language_server SUBDIR += runawk SUBDIR += rust SUBDIR += rust-bootstrap SUBDIR += rust-nightly SUBDIR += rustpython SUBDIR += s7 SUBDIR += s7-nrepl SUBDIR += sagittarius-scheme SUBDIR += sather-specification SUBDIR += sather-tutorial SUBDIR += sbcl SUBDIR += scala SUBDIR += scheme48 SUBDIR += scm SUBDIR += scratch SUBDIR += scryer-prolog SUBDIR += sdcc SUBDIR += see SUBDIR += seed7 SUBDIR += silq SUBDIR += siod SUBDIR += sisc SUBDIR += sketchy SUBDIR += slib SUBDIR += slib-guile SUBDIR += slisp SUBDIR += smalltalk SUBDIR += smlnj SUBDIR += snobol4 SUBDIR += solidity SUBDIR += spidermonkey102 SUBDIR += spidermonkey115 SUBDIR += spidermonkey128 SUBDIR += spidermonkey78 SUBDIR += spidermonkey91 SUBDIR += spl SUBDIR += squeak SUBDIR += squirrel SUBDIR += starlark-rust SUBDIR += swipl SUBDIR += tauthon SUBDIR += tcbasic SUBDIR += tcc SUBDIR += tcl-manual SUBDIR += tcl-wrapper SUBDIR += tcl86 SUBDIR += tcl90 SUBDIR += tclX SUBDIR += tolua SUBDIR += tolua++ + SUBDIR += trealla-prolog SUBDIR += tuareg-mode.el SUBDIR += typstfmt SUBDIR += typstyle SUBDIR += ucc SUBDIR += urweb SUBDIR += v SUBDIR += v8 SUBDIR += v8-beta SUBDIR += vala SUBDIR += voc SUBDIR += yabasic SUBDIR += yap SUBDIR += yorick SUBDIR += ypsilon SUBDIR += zephir SUBDIR += zig SUBDIR += zig010 .include diff --git a/lang/trealla-prolog/Makefile b/lang/trealla-prolog/Makefile new file mode 100644 index 000000000000..e15215286902 --- /dev/null +++ b/lang/trealla-prolog/Makefile @@ -0,0 +1,46 @@ +PORTNAME= trealla-prolog +DISTVERSIONPREFIX= v +DISTVERSION= 2.68.20 +CATEGORIES= lang + +MAINTAINER= me@svmhdvn.name +COMMENT= Compact, efficient Prolog interpreter written in plain-old C +WWW= https://github.com/trealla-prolog/trealla/ + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= gmake + +BUILD_DEPENDS= xxd:sysutils/xxd + +PLIST_FILES= bin/tpl + +TEST_TARGET= test + +OPTIONS_DEFINE= FFI READLINE SSL THREADS +OPTIONS_DEFAULT= FFI READLINE SSL THREADS + +FFI_DESC= FFI support +READLINE_DESC= GNU readline support +SSL_DESC= SSL support +THREADS_DESC= Preemptive multithreading support + +FFI_LIB_DEPENDS= libffi.so:devel/libffi +FFI_MAKE_ARGS_OFF= NOFFI=1 + +READLINE_USES= readline +READLINE_MAKE_ARGS_OFF= ISOCLINE=1 + +SSL_USES= ssl +SSL_MAKE_ARGS_OFF= NOSSL=1 + +THREADS_MAKE_ARGS_OFF= NOTHREADS=1 + +USE_GITHUB= yes +GH_PROJECT= trealla + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/tpl ${STAGEDIR}${PREFIX}/bin/ + +.include diff --git a/lang/trealla-prolog/distinfo b/lang/trealla-prolog/distinfo new file mode 100644 index 000000000000..fe35666e5665 --- /dev/null +++ b/lang/trealla-prolog/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1745272025 +SHA256 (trealla-prolog-trealla-v2.68.20_GH0.tar.gz) = 2fb4d08e02e75622c78e8f4a5edf5d7a76856b6f3e4c87db37c1b0c040db944a +SIZE (trealla-prolog-trealla-v2.68.20_GH0.tar.gz) = 610669 diff --git a/lang/trealla-prolog/pkg-descr b/lang/trealla-prolog/pkg-descr new file mode 100644 index 000000000000..5552f8e154ae --- /dev/null +++ b/lang/trealla-prolog/pkg-descr @@ -0,0 +1,20 @@ +A compact, efficient Prolog interpreter with ISO Prolog aspirations. + +MIT licensed +Integers & Rationals are unbounded +Atoms are UTF-8 of unlimited length +The default double-quoted representation is *chars* list +Strings & slices are super-efficient (especially with mmap'd files) +REPL with history +Runs on Linux, Android, FreeBSD, macOS, and WebAssembly (WASI) & Go +API for calling from C (or by using WASM from Go & JS) +Foreign function interface (FFI) for calling out to user code +Access SQLITE databases using builtin module (uses FFI) +Concurrency via tasks / linda / futures / engines (generators) +Pre-emptive multi-threading +Blackboarding primitives +... +FFIs for GNU Scientific Library (GSL), SQLite, Raylib +Delimited continuations ##EXPERIMENTAL## +Rational trees ##EXPERIMENTAL## +CLP(Z) ##EXPERIMENTAL##