mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-19 08:13:21 +00:00
New port: math/teyjus: Higher-order logic programming language Lambda Prolog
This commit is contained in:
parent
49d8b692bc
commit
8b867c996a
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=519062
@ -868,6 +868,7 @@
|
||||
SUBDIR += taucs
|
||||
SUBDIR += tblis
|
||||
SUBDIR += tetgen
|
||||
SUBDIR += teyjus
|
||||
SUBDIR += timbl
|
||||
SUBDIR += tmv
|
||||
SUBDIR += tomsfastmath
|
||||
|
38
math/teyjus/Makefile
Normal file
38
math/teyjus/Makefile
Normal file
@ -0,0 +1,38 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= teyjus
|
||||
DISTVERSIONPREFIX= v
|
||||
DISTVERSION= 2.1-7
|
||||
DISTVERSIONSUFFIX= -ge63f40a
|
||||
CATEGORIES= math lang
|
||||
|
||||
MAINTAINER= yuri@FreeBSD.org
|
||||
COMMENT= Higher-order logic programming language Lambda Prolog
|
||||
|
||||
LICENSE= GPLv3
|
||||
LICENSE_FILE= ${WRKSRC}/COPYING
|
||||
|
||||
BUILD_DEPENDS= ocamlopt:lang/ocaml \
|
||||
omake:devel/omake \
|
||||
bash:shells/bash
|
||||
|
||||
USES= dos2unix shebangfix
|
||||
DOS2UNIX_FILES= source/OMakefile
|
||||
SHBANG_GLOB= run_test
|
||||
USE_GITHUB= yes
|
||||
|
||||
EXES= tjcc tjdepend tjdis tjlink tjsim
|
||||
PLIST_FILES= ${EXES:S/^/bin\//}
|
||||
|
||||
post-patch:
|
||||
@${FIND} ${WRKSRC} -name run_test | ${XARGS} ${REINPLACE_CMD} 's|#!/bin/bash|#!${LOCALBASE}/bin/bash|'
|
||||
|
||||
do-build:
|
||||
@cd ${WRKSRC} && omake
|
||||
|
||||
do-install:
|
||||
.for e in ${EXES}
|
||||
${INSTALL_PROGRAM} ${WRKSRC}/source/${e}.opt ${STAGEDIR}${PREFIX}/bin/${e}
|
||||
.endfor
|
||||
|
||||
.include <bsd.port.mk>
|
3
math/teyjus/distinfo
Normal file
3
math/teyjus/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
TIMESTAMP = 1575264560
|
||||
SHA256 (teyjus-teyjus-v2.1-7-ge63f40a_GH0.tar.gz) = 6531808ad7dfe3527581defc1d8841881070274ef04fe3772e056a96a4dc3162
|
||||
SIZE (teyjus-teyjus-v2.1-7-ge63f40a_GH0.tar.gz) = 724248
|
13
math/teyjus/files/patch-source_OMakefile
Normal file
13
math/teyjus/files/patch-source_OMakefile
Normal file
@ -0,0 +1,13 @@
|
||||
--- source/OMakefile.orig 2019-12-03 03:41:53 UTC
|
||||
+++ source/OMakefile
|
||||
@@ -208,6 +208,10 @@ if $(mem $(SYSNAME), OpenBSD)
|
||||
INC_C[] += $(INC)/search
|
||||
export
|
||||
|
||||
+if $(mem $(SYSNAME), FreeBSD)
|
||||
+ INC_C[] += $(INC)/search
|
||||
+ export
|
||||
+
|
||||
|
||||
############################################################
|
||||
# Generated Files
|
5
math/teyjus/files/patch-source_compiler_OMakefile
Normal file
5
math/teyjus/files/patch-source_compiler_OMakefile
Normal file
@ -0,0 +1,5 @@
|
||||
--- source/compiler/OMakefile.orig 2019-12-03 04:31:49 UTC
|
||||
+++ source/compiler/OMakefile
|
||||
@@ -1 +1,2 @@
|
||||
+NATIVE_ENABLED = true
|
||||
OCamlGeneratedFiles(lplex.ml lpyacc.ml)
|
15
math/teyjus/files/patch-source_include_standardlib.h
Normal file
15
math/teyjus/files/patch-source_include_standardlib.h
Normal file
@ -0,0 +1,15 @@
|
||||
--- source/include/standardlib.h.orig 2019-12-02 05:46:28 UTC
|
||||
+++ source/include/standardlib.h
|
||||
@@ -79,9 +79,9 @@ typedef unsigned __int64 u_int64_t;
|
||||
# include <unistd.h>
|
||||
# include <sys/endian.h>
|
||||
// Use the functions from byteorder(3)
|
||||
-# define bswap_16(x) swap16(x)
|
||||
-# define bswap_32(x) swap32(x)
|
||||
-# define bswap_64(x) swap64(x)
|
||||
+# define bswap_16(x) bswap16(x)
|
||||
+# define bswap_32(x) bswap32(x)
|
||||
+# define bswap_64(x) bswap64(x)
|
||||
// __WORDSIZE is non-standard and should be inferred otherhow
|
||||
# if defined(__x86_64__) || defined(__amd64__) || defined(__LP64__)
|
||||
# define __WORDSIZE 64
|
19
math/teyjus/pkg-descr
Normal file
19
math/teyjus/pkg-descr
Normal file
@ -0,0 +1,19 @@
|
||||
The Teyjus system is an efficient implementation of the higher-order logic
|
||||
programming language Lambda Prolog. The main strength of Lambda Prolog, a
|
||||
language developed by Dale Miller and Gopalan Nadathur, is the support it offers
|
||||
for what is known as lambda tree syntax, a new and effective way to view the
|
||||
structure of complex syntactic objects such as types, formulas, proofs and
|
||||
programs. Lambda Prolog provides this support by using lambda terms as data
|
||||
representation devices and by including primitives for probing such terms in
|
||||
logically meaningful ways. The new features present in the language raise
|
||||
several implementation challenges that have been addressed in collaborative work
|
||||
between Nadathur and his students and colleagues. The name "Teyjus" actually
|
||||
stands both for a project and for a class of compiler and virtual machine based
|
||||
realizations of Lambda Prolog arising from the research carried out within this
|
||||
project. Underlying the most recent version of the Teyjus system is a new and
|
||||
significantly improved virtual machine that has been designed by Xiaochu Qi as
|
||||
part of her doctoral dissertation work at the University of Minnesota. This
|
||||
virtual machine extensively exploits a special form of higher-order unification
|
||||
known as pattern unification.
|
||||
|
||||
WWW: http://teyjus.cs.umn.edu/
|
Loading…
Reference in New Issue
Block a user