update to latest oynx release, 4.1.0. changes to oynx language are:

* Treat evaluatable names specially when binding (don't bind them), in
          order to make it possible to force dynamic lookup of names, without
          having to resort to using the load operator on literal names.

	  This required a language syntax change so that evaluatable names can
	  be created in deferred execution mode.  The possibilities for
	  specifying an evaluatable name were $$$name, $#name, or adding a new
	  special character.  Since neither of the backward compatible syntax
	  changes were very palatable, two new special characters were added.
	  !name creates an evaluatable name, and the former $$name syntax is now
	  written as ~name for consistency.

	* Add operators:
	  + bindsocket
	  + listen
	  + accept
	  + send
	  + recv

	* bin/onyx_config : Add onyx_config, which aids in building software
	  that uses libonyx.

	* lib/libonyx/src/nxo_string.c:nxo_string_cstring() : Handle name
	  objects as well as string objects.

	* Add operators:
	  + serviceport
	  + sockname
	  + peername
	  + sockopt
	  + setsockopt

	* Add the neterror error.

	* Add the ncat operator.

	* Remove the fork operator and replace it with the forkexec operator.
	  Doing anything between fork() and exec() in a multi-threaded
	  application risks hanging.

	* Revise string and pointer hashing functions to marginally improve
	  performance.

	* Add operators:
	  + socket
	  + socketpair
	  + connect

	* Add operators:
	  + nonblocking
	  + setnonblocking

	* Modify the write operator to return whether a write was partial or
	  not.  This is necessary for non-blocking files.

	* Change language syntax.  The / special character is now $.

	* Modify the mkdir operator such that specifying the mode is optional.

	* Add operators:
	  + chroot
	  + mkfifo
	  + pipe
	  + readlink
	  + umask

	* Remove "fast" operator support, since it wasn't very fast.
	  Performance without fast operators is +-3% of what it was with fast
	  operator support, for typical programs.

	* Add operators:
	  + inc, dec
	  + while, until

	* Remove operators:
	  + cleardstack

	* Change language syntax:
	  + Radix integers are <base>@<value> instead of <base>#<value>.
	  + Comments start with #, not %.
	  + Add special characters in strings:
	    - `\0'  : Nul character (nul), equivalent to `\x00'.
	    - `\cC' : Control C, where C is [A-Za-z].
	    - `\a'  : Alarm (bel).
	    - `\e'  : Escape (ec).

	* Add operators:
	  + threadsdict
	  + threaddstack, threadestack, threadistack, threadostack

	* Remove operators:
	  + #!
	  + !#

	  Add operators:
	  + rot, srot
	  + adn, aup
	  + saup, sadn

	  Rename/replace operators:
	  + push --> adn
	  + npush/nbpush --> rot
	  + snpush/snbpush --> srot

	  Remove operators:
	  + push

	* lib/libonyx/src/systemdict.c : Add operators:
	  + bpop, nbpop, ipop, nip, tuck, under, over, up, nup, dn, ndn, bdup,
	    ibdup, ibpop, bpush
	  + sbpop, snbpop, sipop, snip, stuck, sunder, sover, sup, snup, sdn,
	    sndn, sndup, snpop, sbdup, sibdup, sibpop, sbpush

	* Rename operators:
	  + index --> idup
	  + sindex --> sidup

	* Add operators:
	  + poll
	  + gstdin, gstdout, gstderr
	  + setstdin, setstdout, setstderr
	  + setgstdin, setgstdout, setgstderr

	* Add optional mode argument to the open operator.


XXX: TODO:  pthread.buildlink*.mk support.
This commit is contained in:
mrg 2002-11-11 11:10:41 +00:00
parent c75e5a8bbb
commit b3cff102a4
3 changed files with 161 additions and 126 deletions

View file

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.5 2002/04/10 17:05:37 agc Exp $
# $NetBSD: Makefile,v 1.6 2002/11/11 11:10:41 mrg Exp $
DISTNAME= onyx-${VERS}
CATEGORIES= lang
@ -9,7 +9,7 @@ HOMEPAGE= http://www.canonware.com/
COMMENT= Embeddable stack-based threaded interpreted language
# needs EL_CLIENTDATA in /usr/include/histedit.h
ONLY_FOR_PLATFORM= NetBSD-1.5[YZ]*-* NetBSD-1.6-*
ONLY_FOR_PLATFORM= NetBSD-1.5[YZ]*-* NetBSD-1.6*-* NetBSD-1.7*-*
BUILD_DEPENDS= cook-[0-9]*:../../devel/cook
@ -17,7 +17,7 @@ GNU_CONFIGURE= yes
# XXX
CONFIGURE_ARGS+= --disable-threads
VERS= 3.0.2
VERS= 4.1.0
PLIST_SUBST+= VERS=${VERS}
do-build:

View file

@ -1,10 +1,13 @@
@comment $NetBSD: PLIST,v 1.2 2002/04/03 18:02:07 wiz Exp $
@comment $NetBSD: PLIST,v 1.3 2002/11/11 11:10:41 mrg Exp $
bin/onyx
bin/onyx-${VERS}
include/libonyx/libonyx.h
bin/${PKGNAME}
bin/onyx_config
bin/onyx_config-${PKGVERSION}
include/libonyx/ch.h
include/libonyx/dch.h
include/libonyx/gcdict.h
include/libonyx/libonyx.h
include/libonyx/libonyx_defs.h
include/libonyx/mb.h
include/libonyx/mem.h
include/libonyx/nx.h
@ -24,130 +27,162 @@ include/libonyx/nxo_no.h
include/libonyx/nxo_null.h
include/libonyx/nxo_operator.h
include/libonyx/nxo_pmark.h
include/libonyx/nxo_real.h
include/libonyx/nxo_stack.h
include/libonyx/nxo_string.h
include/libonyx/ql.h
include/libonyx/nxo_thread.h
include/libonyx/ql.h
include/libonyx/qr.h
include/libonyx/qs.h
include/libonyx/systemdict.h
include/libonyx/xep.h
include/libonyx/nxo_real.h
include/libonyx/libonyx_defs.h
lib/libonyx.so
lib/libonyx.so.6
lib/libonyx.a
share/onyx-${VERS}/doc/ps/onyx.ps
share/onyx-${VERS}/doc/pdf/onyx.pdf
share/onyx-${VERS}/doc/html/contents.png
share/onyx-${VERS}/doc/html/img1.png
share/onyx-${VERS}/doc/html/img2.png
share/onyx-${VERS}/doc/html/img3.png
share/onyx-${VERS}/doc/html/img4.png
share/onyx-${VERS}/doc/html/img5.png
share/onyx-${VERS}/doc/html/img6.png
share/onyx-${VERS}/doc/html/index.html
share/onyx-${VERS}/doc/html/index.png
share/onyx-${VERS}/doc/html/next.png
share/onyx-${VERS}/doc/html/next_g.png
share/onyx-${VERS}/doc/html/node1.html
share/onyx-${VERS}/doc/html/node10.html
share/onyx-${VERS}/doc/html/node11.html
share/onyx-${VERS}/doc/html/node12.html
share/onyx-${VERS}/doc/html/node13.html
share/onyx-${VERS}/doc/html/node14.html
share/onyx-${VERS}/doc/html/node15.html
share/onyx-${VERS}/doc/html/node16.html
share/onyx-${VERS}/doc/html/node17.html
share/onyx-${VERS}/doc/html/node18.html
share/onyx-${VERS}/doc/html/node19.html
share/onyx-${VERS}/doc/html/node2.html
share/onyx-${VERS}/doc/html/node20.html
share/onyx-${VERS}/doc/html/node21.html
share/onyx-${VERS}/doc/html/node22.html
share/onyx-${VERS}/doc/html/node23.html
share/onyx-${VERS}/doc/html/node24.html
share/onyx-${VERS}/doc/html/node25.html
share/onyx-${VERS}/doc/html/node26.html
share/onyx-${VERS}/doc/html/node27.html
share/onyx-${VERS}/doc/html/node28.html
share/onyx-${VERS}/doc/html/node29.html
share/onyx-${VERS}/doc/html/node3.html
share/onyx-${VERS}/doc/html/node30.html
share/onyx-${VERS}/doc/html/node31.html
share/onyx-${VERS}/doc/html/node32.html
share/onyx-${VERS}/doc/html/node33.html
share/onyx-${VERS}/doc/html/node34.html
share/onyx-${VERS}/doc/html/node35.html
share/onyx-${VERS}/doc/html/node36.html
share/onyx-${VERS}/doc/html/node37.html
share/onyx-${VERS}/doc/html/node38.html
share/onyx-${VERS}/doc/html/node39.html
share/onyx-${VERS}/doc/html/node4.html
share/onyx-${VERS}/doc/html/node40.html
share/onyx-${VERS}/doc/html/node41.html
share/onyx-${VERS}/doc/html/node42.html
share/onyx-${VERS}/doc/html/node43.html
share/onyx-${VERS}/doc/html/node44.html
share/onyx-${VERS}/doc/html/node45.html
share/onyx-${VERS}/doc/html/node46.html
share/onyx-${VERS}/doc/html/node47.html
share/onyx-${VERS}/doc/html/node48.html
share/onyx-${VERS}/doc/html/node49.html
share/onyx-${VERS}/doc/html/node5.html
share/onyx-${VERS}/doc/html/node50.html
share/onyx-${VERS}/doc/html/node51.html
share/onyx-${VERS}/doc/html/node52.html
share/onyx-${VERS}/doc/html/node53.html
share/onyx-${VERS}/doc/html/node54.html
share/onyx-${VERS}/doc/html/node55.html
share/onyx-${VERS}/doc/html/node56.html
share/onyx-${VERS}/doc/html/node57.html
share/onyx-${VERS}/doc/html/node58.html
share/onyx-${VERS}/doc/html/node59.html
share/onyx-${VERS}/doc/html/node6.html
share/onyx-${VERS}/doc/html/node60.html
share/onyx-${VERS}/doc/html/node61.html
share/onyx-${VERS}/doc/html/node62.html
share/onyx-${VERS}/doc/html/node63.html
share/onyx-${VERS}/doc/html/node64.html
share/onyx-${VERS}/doc/html/node65.html
share/onyx-${VERS}/doc/html/node66.html
share/onyx-${VERS}/doc/html/node67.html
share/onyx-${VERS}/doc/html/node68.html
share/onyx-${VERS}/doc/html/node69.html
share/onyx-${VERS}/doc/html/node7.html
share/onyx-${VERS}/doc/html/node70.html
share/onyx-${VERS}/doc/html/node71.html
share/onyx-${VERS}/doc/html/node72.html
share/onyx-${VERS}/doc/html/node73.html
share/onyx-${VERS}/doc/html/node74.html
share/onyx-${VERS}/doc/html/node75.html
share/onyx-${VERS}/doc/html/node76.html
share/onyx-${VERS}/doc/html/node77.html
share/onyx-${VERS}/doc/html/node78.html
share/onyx-${VERS}/doc/html/node79.html
share/onyx-${VERS}/doc/html/node8.html
share/onyx-${VERS}/doc/html/node80.html
share/onyx-${VERS}/doc/html/node81.html
share/onyx-${VERS}/doc/html/node82.html
share/onyx-${VERS}/doc/html/node9.html
share/onyx-${VERS}/doc/html/onyx.css
share/onyx-${VERS}/doc/html/onyx.html
share/onyx-${VERS}/doc/html/prev.png
share/onyx-${VERS}/doc/html/prev_g.png
share/onyx-${VERS}/doc/html/up.png
share/onyx-${VERS}/doc/html/up_g.png
share/onyx-${VERS}/nxm/modprompt.nxm
share/onyx-${VERS}/nx/modprompt/modprompt.nx
share/onyx-${VERS}/nx/modprompt/modprompt_defs.nx
lib/libonyx.so
lib/libonyx.so.7
man/man1/onyx.1
man/man1/onyx_config.1
share/onyx
share/${PKGNAME}/doc/html/contents.png
share/${PKGNAME}/doc/html/img1.png
share/${PKGNAME}/doc/html/img10.png
share/${PKGNAME}/doc/html/img11.png
share/${PKGNAME}/doc/html/img12.png
share/${PKGNAME}/doc/html/img13.png
share/${PKGNAME}/doc/html/img2.png
share/${PKGNAME}/doc/html/img3.png
share/${PKGNAME}/doc/html/img4.png
share/${PKGNAME}/doc/html/img5.png
share/${PKGNAME}/doc/html/img6.png
share/${PKGNAME}/doc/html/img7.png
share/${PKGNAME}/doc/html/img8.png
share/${PKGNAME}/doc/html/img9.png
share/${PKGNAME}/doc/html/index.html
share/${PKGNAME}/doc/html/index.png
share/${PKGNAME}/doc/html/next.png
share/${PKGNAME}/doc/html/next_g.png
share/${PKGNAME}/doc/html/node1.html
share/${PKGNAME}/doc/html/node10.html
share/${PKGNAME}/doc/html/node100.html
share/${PKGNAME}/doc/html/node101.html
share/${PKGNAME}/doc/html/node102.html
share/${PKGNAME}/doc/html/node103.html
share/${PKGNAME}/doc/html/node104.html
share/${PKGNAME}/doc/html/node105.html
share/${PKGNAME}/doc/html/node106.html
share/${PKGNAME}/doc/html/node11.html
share/${PKGNAME}/doc/html/node12.html
share/${PKGNAME}/doc/html/node13.html
share/${PKGNAME}/doc/html/node14.html
share/${PKGNAME}/doc/html/node15.html
share/${PKGNAME}/doc/html/node16.html
share/${PKGNAME}/doc/html/node17.html
share/${PKGNAME}/doc/html/node18.html
share/${PKGNAME}/doc/html/node19.html
share/${PKGNAME}/doc/html/node2.html
share/${PKGNAME}/doc/html/node20.html
share/${PKGNAME}/doc/html/node21.html
share/${PKGNAME}/doc/html/node22.html
share/${PKGNAME}/doc/html/node23.html
share/${PKGNAME}/doc/html/node24.html
share/${PKGNAME}/doc/html/node25.html
share/${PKGNAME}/doc/html/node26.html
share/${PKGNAME}/doc/html/node27.html
share/${PKGNAME}/doc/html/node28.html
share/${PKGNAME}/doc/html/node29.html
share/${PKGNAME}/doc/html/node3.html
share/${PKGNAME}/doc/html/node30.html
share/${PKGNAME}/doc/html/node31.html
share/${PKGNAME}/doc/html/node32.html
share/${PKGNAME}/doc/html/node33.html
share/${PKGNAME}/doc/html/node34.html
share/${PKGNAME}/doc/html/node35.html
share/${PKGNAME}/doc/html/node36.html
share/${PKGNAME}/doc/html/node37.html
share/${PKGNAME}/doc/html/node38.html
share/${PKGNAME}/doc/html/node39.html
share/${PKGNAME}/doc/html/node4.html
share/${PKGNAME}/doc/html/node40.html
share/${PKGNAME}/doc/html/node41.html
share/${PKGNAME}/doc/html/node42.html
share/${PKGNAME}/doc/html/node43.html
share/${PKGNAME}/doc/html/node44.html
share/${PKGNAME}/doc/html/node45.html
share/${PKGNAME}/doc/html/node46.html
share/${PKGNAME}/doc/html/node47.html
share/${PKGNAME}/doc/html/node48.html
share/${PKGNAME}/doc/html/node49.html
share/${PKGNAME}/doc/html/node5.html
share/${PKGNAME}/doc/html/node50.html
share/${PKGNAME}/doc/html/node51.html
share/${PKGNAME}/doc/html/node52.html
share/${PKGNAME}/doc/html/node53.html
share/${PKGNAME}/doc/html/node54.html
share/${PKGNAME}/doc/html/node55.html
share/${PKGNAME}/doc/html/node56.html
share/${PKGNAME}/doc/html/node57.html
share/${PKGNAME}/doc/html/node58.html
share/${PKGNAME}/doc/html/node59.html
share/${PKGNAME}/doc/html/node6.html
share/${PKGNAME}/doc/html/node60.html
share/${PKGNAME}/doc/html/node61.html
share/${PKGNAME}/doc/html/node62.html
share/${PKGNAME}/doc/html/node63.html
share/${PKGNAME}/doc/html/node64.html
share/${PKGNAME}/doc/html/node65.html
share/${PKGNAME}/doc/html/node66.html
share/${PKGNAME}/doc/html/node67.html
share/${PKGNAME}/doc/html/node68.html
share/${PKGNAME}/doc/html/node69.html
share/${PKGNAME}/doc/html/node7.html
share/${PKGNAME}/doc/html/node70.html
share/${PKGNAME}/doc/html/node71.html
share/${PKGNAME}/doc/html/node72.html
share/${PKGNAME}/doc/html/node73.html
share/${PKGNAME}/doc/html/node74.html
share/${PKGNAME}/doc/html/node75.html
share/${PKGNAME}/doc/html/node76.html
share/${PKGNAME}/doc/html/node77.html
share/${PKGNAME}/doc/html/node78.html
share/${PKGNAME}/doc/html/node79.html
share/${PKGNAME}/doc/html/node8.html
share/${PKGNAME}/doc/html/node80.html
share/${PKGNAME}/doc/html/node81.html
share/${PKGNAME}/doc/html/node82.html
share/${PKGNAME}/doc/html/node83.html
share/${PKGNAME}/doc/html/node84.html
share/${PKGNAME}/doc/html/node85.html
share/${PKGNAME}/doc/html/node86.html
share/${PKGNAME}/doc/html/node87.html
share/${PKGNAME}/doc/html/node88.html
share/${PKGNAME}/doc/html/node89.html
share/${PKGNAME}/doc/html/node9.html
share/${PKGNAME}/doc/html/node90.html
share/${PKGNAME}/doc/html/node91.html
share/${PKGNAME}/doc/html/node92.html
share/${PKGNAME}/doc/html/node93.html
share/${PKGNAME}/doc/html/node94.html
share/${PKGNAME}/doc/html/node95.html
share/${PKGNAME}/doc/html/node96.html
share/${PKGNAME}/doc/html/node97.html
share/${PKGNAME}/doc/html/node98.html
share/${PKGNAME}/doc/html/node99.html
share/${PKGNAME}/doc/html/onyx.css
share/${PKGNAME}/doc/html/onyx.html
share/${PKGNAME}/doc/html/prev.png
share/${PKGNAME}/doc/html/prev_g.png
share/${PKGNAME}/doc/html/up.png
share/${PKGNAME}/doc/html/up_g.png
share/${PKGNAME}/doc/pdf/onyx.pdf
share/${PKGNAME}/doc/ps/onyx.ps
share/${PKGNAME}/nx/modprompt/modprompt.nx
share/${PKGNAME}/nx/modprompt/modprompt_defs.nx
share/${PKGNAME}/nxm/modprompt.nxm
@dirrm share/${PKGNAME}/nxm
@dirrm share/${PKGNAME}/nx/modprompt
@dirrm share/${PKGNAME}/nx
@dirrm share/${PKGNAME}/doc/ps
@dirrm share/${PKGNAME}/doc/pdf
@dirrm share/${PKGNAME}/doc/html
@dirrm share/${PKGNAME}/doc
@dirrm share/${PKGNAME}
@dirrm include/libonyx
@dirrm share/onyx-${VERS}/doc/ps
@dirrm share/onyx-${VERS}/doc/pdf
@dirrm share/onyx-${VERS}/doc/html
@dirrm share/onyx-${VERS}/doc
@dirrm share/onyx-${VERS}/nxm
@dirrm share/onyx-${VERS}/nx/modprompt
@dirrm share/onyx-${VERS}/nx
@dirrm share/onyx-${VERS}

View file

@ -1,4 +1,4 @@
$NetBSD: distinfo,v 1.2 2002/04/03 18:02:07 wiz Exp $
$NetBSD: distinfo,v 1.3 2002/11/11 11:10:41 mrg Exp $
SHA1 (onyx-3.0.2.tar.gz) = 8904292b3ae534231c141c80a326b3daa44b17c3
Size (onyx-3.0.2.tar.gz) = 1147718 bytes
SHA1 (onyx-4.1.0.tar.gz) = 7e34f763e7e509fcfd1b84eef5b28c40cbda7541
Size (onyx-4.1.0.tar.gz) = 1415057 bytes