diff options
author | kamil <kamil@pkgsrc.org> | 2016-09-18 01:02:43 +0000 |
---|---|---|
committer | kamil <kamil@pkgsrc.org> | 2016-09-18 01:02:43 +0000 |
commit | 0a0b409c7c153204664ea85b057a7b5380538435 (patch) | |
tree | 28f00ab0a749b332ed117b44c68b513c4bd24e3f /lang | |
parent | c1b78024bba8b3784f92c02c6ea90f61f3f1fecc (diff) | |
download | pkgsrc-0a0b409c7c153204664ea85b057a7b5380538435.tar.gz |
Import nim-0.14.2 as lang/nim
Nim (formerly known as "Nimrod") is a statically typed, imperative
programming language that tries to give the programmer ultimate power
without compromises on runtime efficiency. This means it focuses on
compile-time mechanisms in all their various forms.
Beneath a nice infix/indentation based syntax with a powerful (AST based,
hygienic) macro system lies a semantic model that supports a soft realtime
GC on thread local heaps. Asynchronous message passing is used between
threads, so no "stop the world" mechanism is necessary. An unsafe shared
memory heap is also provided for the increased efficiency that results from
that model.
Originally packaged in pkgsrc-wip by:
- Christian Koch
- Roland Illig
and
- myself.
Diffstat (limited to 'lang')
-rw-r--r-- | lang/nim/DESCR | 11 | ||||
-rw-r--r-- | lang/nim/Makefile | 28 | ||||
-rw-r--r-- | lang/nim/PLIST | 349 | ||||
-rw-r--r-- | lang/nim/distinfo | 6 |
4 files changed, 394 insertions, 0 deletions
diff --git a/lang/nim/DESCR b/lang/nim/DESCR new file mode 100644 index 00000000000..063ab39e40e --- /dev/null +++ b/lang/nim/DESCR @@ -0,0 +1,11 @@ +Nim (formerly known as "Nimrod") is a statically typed, imperative +programming language that tries to give the programmer ultimate power +without compromises on runtime efficiency. This means it focuses on +compile-time mechanisms in all their various forms. + +Beneath a nice infix/indentation based syntax with a powerful (AST based, +hygienic) macro system lies a semantic model that supports a soft realtime +GC on thread local heaps. Asynchronous message passing is used between +threads, so no "stop the world" mechanism is necessary. An unsafe shared +memory heap is also provided for the increased efficiency that results from +that model. diff --git a/lang/nim/Makefile b/lang/nim/Makefile new file mode 100644 index 00000000000..3f2240aed3e --- /dev/null +++ b/lang/nim/Makefile @@ -0,0 +1,28 @@ +# $NetBSD: Makefile,v 1.1 2016/09/18 01:02:43 kamil Exp $ + +DISTNAME= nim-0.14.2 +CATEGORIES= lang +MASTER_SITES= http://nim-lang.org/download/ +EXTRACT_SUFX= .tar.xz + +MAINTAINER= cfkoch@edgebsd.org +COMMENT= The Nim programming language +LICENSE= mit + +AUTO_MKDIRS= yes + +do-build: + cd ${WRKSRC} && sh ./build.sh + printf '#! %s\nexec %s _=%s/nim/bin/nim %s/nim/bin/nim "$$@"\n' \ + "${SH}" "${SETENV}" "${PREFIX}" "${PREFIX}" \ + > ${WRKSRC}/nim-wrapper.sh + +do-install: + cd ${WRKSRC} && sh ./install.sh ${DESTDIR}${PREFIX} + ${INSTALL_SCRIPT} ${WRKSRC}/nim-wrapper.sh ${DESTDIR}${PREFIX}/bin/nim + +do-test: + cd ${WRKSRC} && ./bin/nim compile koch.nim + cd ${WRKSRC} && LD_LIBRARY_PATH=$PREFIX/lib ./koch tests + +.include "../../mk/bsd.pkg.mk" diff --git a/lang/nim/PLIST b/lang/nim/PLIST new file mode 100644 index 00000000000..9f826a33dfc --- /dev/null +++ b/lang/nim/PLIST @@ -0,0 +1,349 @@ +@comment $NetBSD: PLIST,v 1.1 2016/09/18 01:02:43 kamil Exp $ +bin/nim +nim/bin/nim +nim/compiler.nimble +nim/compiler/aliases.nim +nim/compiler/ast.nim +nim/compiler/astalgo.nim +nim/compiler/bitsets.nim +nim/compiler/canonicalizer.nim +nim/compiler/ccgcalls.nim +nim/compiler/ccgexprs.nim +nim/compiler/ccgmerge.nim +nim/compiler/ccgstmts.nim +nim/compiler/ccgthreadvars.nim +nim/compiler/ccgtrav.nim +nim/compiler/ccgtypes.nim +nim/compiler/ccgutils.nim +nim/compiler/cgen.nim +nim/compiler/cgendata.nim +nim/compiler/cgmeth.nim +nim/compiler/commands.nim +nim/compiler/condsyms.nim +nim/compiler/debuginfo.nim +nim/compiler/depends.nim +nim/compiler/docgen.nim +nim/compiler/docgen2.nim +nim/compiler/evalffi.nim +nim/compiler/evaltempl.nim +nim/compiler/extccomp.nim +nim/compiler/filter_tmpl.nim +nim/compiler/filters.nim +nim/compiler/forloops.nim +nim/compiler/guards.nim +nim/compiler/hlo.nim +nim/compiler/idents.nim +nim/compiler/idgen.nim +nim/compiler/importer.nim +nim/compiler/installer.ini +nim/compiler/jsgen.nim +nim/compiler/jstypes.nim +nim/compiler/lambdalifting.nim +nim/compiler/lexer.nim +nim/compiler/lists.nim +nim/compiler/llstream.nim +nim/compiler/lookups.nim +nim/compiler/lowerings.nim +nim/compiler/magicsys.nim +nim/compiler/main.nim +nim/compiler/mapping.txt +nim/compiler/modules.nim +nim/compiler/msgs.nim +nim/compiler/nim.cfg +nim/compiler/nim.nim +nim/compiler/nimblecmd.nim +nim/compiler/nimconf.nim +nim/compiler/nimeval.nim +nim/compiler/nimfix/nimfix.nim +nim/compiler/nimfix/nimfix.nim.cfg +nim/compiler/nimfix/pretty.nim +nim/compiler/nimfix/prettybase.nim +nim/compiler/nimlexbase.nim +nim/compiler/nimsets.nim +nim/compiler/nimsuggest/nimsuggest.nim +nim/compiler/nodejs.nim +nim/compiler/nversion.nim +nim/compiler/options.nim +nim/compiler/parampatterns.nim +nim/compiler/parser.nim +nim/compiler/passaux.nim +nim/compiler/passes.nim +nim/compiler/patterns.nim +nim/compiler/pbraces.nim +nim/compiler/platform.nim +nim/compiler/plugins/active.nim +nim/compiler/plugins/itersgen.nim +nim/compiler/plugins/locals/locals.nim +nim/compiler/pluginsupport.nim +nim/compiler/pragmas.nim +nim/compiler/procfind.nim +nim/compiler/readme.txt +nim/compiler/renderer.nim +nim/compiler/rodread.nim +nim/compiler/rodutils.nim +nim/compiler/rodwrite.nim +nim/compiler/ropes.nim +nim/compiler/saturate.nim +nim/compiler/scriptconfig.nim +nim/compiler/sem.nim +nim/compiler/semasgn.nim +nim/compiler/semcall.nim +nim/compiler/semdata.nim +nim/compiler/semdestruct.nim +nim/compiler/semexprs.nim +nim/compiler/semfields.nim +nim/compiler/semfold.nim +nim/compiler/semgnrc.nim +nim/compiler/seminst.nim +nim/compiler/semmacrosanity.nim +nim/compiler/semmagic.nim +nim/compiler/semparallel.nim +nim/compiler/sempass2.nim +nim/compiler/semprepass.nim +nim/compiler/semstmts.nim +nim/compiler/semtempl.nim +nim/compiler/semtypes.nim +nim/compiler/semtypinst.nim +nim/compiler/service.nim +nim/compiler/sigmatch.nim +nim/compiler/suggest.nim +nim/compiler/syntaxes.nim +nim/compiler/tccgen.nim +nim/compiler/testability.nim +nim/compiler/transf.nim +nim/compiler/trees.nim +nim/compiler/treetab.nim +nim/compiler/types.nim +nim/compiler/typesrenderer.nim +nim/compiler/vm.nim +nim/compiler/vmdef.nim +nim/compiler/vmdeps.nim +nim/compiler/vmgen.nim +nim/compiler/vmhooks.nim +nim/compiler/vmmarshal.nim +nim/compiler/vmops.nim +nim/compiler/wordrecg.nim +nim/compiler/writetracking.nim +nim/config/nim.cfg +nim/config/nimdoc.cfg +nim/config/nimdoc.tex.cfg +nim/doc/advopt.txt +nim/doc/basicopt.txt +nim/doc/overview.html +nim/lib/arch/arch.nim +nim/lib/arch/i386.asm +nim/lib/arch/ms_amd64.asm +nim/lib/arch/ms_i386.asm +nim/lib/arch/unix_amd64.asm +nim/lib/arch/unix_i386.asm +nim/lib/core/locks.nim +nim/lib/core/macros.nim +nim/lib/core/rlocks.nim +nim/lib/core/typeinfo.nim +nim/lib/cycle.h +nim/lib/deprecated/core/unsigned.nim +nim/lib/deprecated/pure/actors.nim +nim/lib/deprecated/pure/actors.nim.cfg +nim/lib/deprecated/pure/asyncio.nim +nim/lib/deprecated/pure/ftpclient.nim +nim/lib/deprecated/pure/parseurl.nim +nim/lib/deprecated/pure/rawsockets.nim +nim/lib/deprecated/pure/sockets.nim +nim/lib/impure/db_mysql.nim +nim/lib/impure/db_odbc.nim +nim/lib/impure/db_postgres.nim +nim/lib/impure/db_sqlite.nim +nim/lib/impure/nre.nim +nim/lib/impure/nre/private/util.nim +nim/lib/impure/osinfo_posix.nim +nim/lib/impure/osinfo_win.nim +nim/lib/impure/rdstdin.nim +nim/lib/impure/re.nim +nim/lib/impure/ssl.nim +nim/lib/js/dom.nim +nim/lib/libnimrtl.dylib +nim/lib/nimbase.h +nim/lib/nimrtl.nim +nim/lib/nimrtl.nim.cfg +nim/lib/packages/docutils/docutils.babel +nim/lib/packages/docutils/highlite.nim +nim/lib/packages/docutils/rst.nim +nim/lib/packages/docutils/rstast.nim +nim/lib/packages/docutils/rstgen.nim +nim/lib/posix/epoll.nim +nim/lib/posix/inotify.nim +nim/lib/posix/kqueue.nim +nim/lib/posix/linux.nim +nim/lib/posix/posix.nim +nim/lib/posix/termios.nim +nim/lib/prelude.nim +nim/lib/pure/algorithm.nim +nim/lib/pure/asyncdispatch.nim +nim/lib/pure/asyncdispatch.nim.cfg +nim/lib/pure/asyncfile.nim +nim/lib/pure/asyncftpclient.nim +nim/lib/pure/asynchttpserver.nim +nim/lib/pure/asyncnet.nim +nim/lib/pure/base64.nim +nim/lib/pure/basic2d.nim +nim/lib/pure/basic3d.nim +nim/lib/pure/browsers.nim +nim/lib/pure/cgi.nim +nim/lib/pure/collections/LockFreeHash.nim +nim/lib/pure/collections/chains.nim +nim/lib/pure/collections/critbits.nim +nim/lib/pure/collections/heapqueue.nim +nim/lib/pure/collections/intsets.nim +nim/lib/pure/collections/lists.nim +nim/lib/pure/collections/queues.nim +nim/lib/pure/collections/rtarrays.nim +nim/lib/pure/collections/sequtils.nim +nim/lib/pure/collections/sets.nim +nim/lib/pure/collections/sharedlist.nim +nim/lib/pure/collections/sharedstrings.nim +nim/lib/pure/collections/sharedtables.nim +nim/lib/pure/collections/tableimpl.nim +nim/lib/pure/collections/tables.nim +nim/lib/pure/colors.nim +nim/lib/pure/complex.nim +nim/lib/pure/concurrency/cpuinfo.nim +nim/lib/pure/concurrency/cpuload.nim +nim/lib/pure/concurrency/threadpool.nim +nim/lib/pure/concurrency/threadpool.nim.cfg +nim/lib/pure/cookies.nim +nim/lib/pure/coro.nim +nim/lib/pure/coro.nimcfg +nim/lib/pure/db_common.nim +nim/lib/pure/dynlib.nim +nim/lib/pure/encodings.nim +nim/lib/pure/endians.nim +nim/lib/pure/etcpriv.nim +nim/lib/pure/events.nim +nim/lib/pure/fenv.nim +nim/lib/pure/fsmonitor.nim +nim/lib/pure/future.nim +nim/lib/pure/gentabs.nim +nim/lib/pure/hashes.nim +nim/lib/pure/htmlgen.nim +nim/lib/pure/htmlparser.nim +nim/lib/pure/httpclient.nim +nim/lib/pure/httpcore.nim +nim/lib/pure/httpserver.nim +nim/lib/pure/json.nim +nim/lib/pure/lexbase.nim +nim/lib/pure/logging.nim +nim/lib/pure/marshal.nim +nim/lib/pure/matchers.nim +nim/lib/pure/math.nim +nim/lib/pure/md5.nim +nim/lib/pure/memfiles.nim +nim/lib/pure/mersenne.nim +nim/lib/pure/mimetypes.nim +nim/lib/pure/nativesockets.nim +nim/lib/pure/net.nim +nim/lib/pure/nimprof.nim +nim/lib/pure/nimprof.nim.cfg +nim/lib/pure/numeric.nim +nim/lib/pure/oids.nim +nim/lib/pure/options.nim +nim/lib/pure/os.nim +nim/lib/pure/ospaths.nim +nim/lib/pure/osproc.nim +nim/lib/pure/oswalkdir.nim +nim/lib/pure/parsecfg.nim +nim/lib/pure/parsecsv.nim +nim/lib/pure/parseopt.nim +nim/lib/pure/parseopt2.nim +nim/lib/pure/parsesql.nim +nim/lib/pure/parseutils.nim +nim/lib/pure/parsexml.nim +nim/lib/pure/pegs.nim +nim/lib/pure/poly.nim +nim/lib/pure/punycode.nim +nim/lib/pure/random.nim +nim/lib/pure/rationals.nim +nim/lib/pure/romans.nim +nim/lib/pure/ropes.nim +nim/lib/pure/scgi.nim +nim/lib/pure/securehash.nim +nim/lib/pure/selectors.nim +nim/lib/pure/smtp.nim +nim/lib/pure/smtp.nim.cfg +nim/lib/pure/stats.nim +nim/lib/pure/streams.nim +nim/lib/pure/strscans.nim +nim/lib/pure/strtabs.nim +nim/lib/pure/strutils.nim +nim/lib/pure/subexes.nim +nim/lib/pure/terminal.nim +nim/lib/pure/times.nim +nim/lib/pure/typetraits.nim +nim/lib/pure/unicode.nim +nim/lib/pure/unidecode/gen.py +nim/lib/pure/unidecode/unidecode.dat +nim/lib/pure/unidecode/unidecode.nim +nim/lib/pure/unittest.nim +nim/lib/pure/uri.nim +nim/lib/pure/xmldom.nim +nim/lib/pure/xmldomparser.nim +nim/lib/pure/xmlparser.nim +nim/lib/pure/xmltree.nim +nim/lib/stdlib.nimble +nim/lib/system.nim +nim/lib/system/alloc.nim +nim/lib/system/ansi_c.nim +nim/lib/system/arithm.nim +nim/lib/system/assign.nim +nim/lib/system/atomics.nim +nim/lib/system/avltree.nim +nim/lib/system/cellsets.nim +nim/lib/system/cgprocs.nim +nim/lib/system/channels.nim +nim/lib/system/chcks.nim +nim/lib/system/debugger.nim +nim/lib/system/deepcopy.nim +nim/lib/system/dyncalls.nim +nim/lib/system/embedded.nim +nim/lib/system/endb.nim +nim/lib/system/excpt.nim +nim/lib/system/gc.nim +nim/lib/system/gc2.nim +nim/lib/system/gc_common.nim +nim/lib/system/gc_ms.nim +nim/lib/system/gc_stack.nim +nim/lib/system/hti.nim +nim/lib/system/inclrtl.nim +nim/lib/system/jssys.nim +nim/lib/system/mmdisp.nim +nim/lib/system/nimscript.nim +nim/lib/system/osalloc.nim +nim/lib/system/platforms.nim +nim/lib/system/profiler.nim +nim/lib/system/repr.nim +nim/lib/system/reprjs.nim +nim/lib/system/sets.nim +nim/lib/system/sysio.nim +nim/lib/system/syslocks.nim +nim/lib/system/sysspawn.nim +nim/lib/system/sysstr.nim +nim/lib/system/threads.nim +nim/lib/system/timers.nim +nim/lib/system/widestrs.nim +nim/lib/windows/winlean.nim +nim/lib/wrappers/iup.nim +nim/lib/wrappers/joyent_http_parser.nim +nim/lib/wrappers/libsvm.nim +nim/lib/wrappers/libuv.nim +nim/lib/wrappers/linenoise/LICENSE.txt +nim/lib/wrappers/linenoise/README.markdown +nim/lib/wrappers/linenoise/clinenoise.c +nim/lib/wrappers/linenoise/clinenoise.h +nim/lib/wrappers/linenoise/linenoise.nim +nim/lib/wrappers/mysql.nim +nim/lib/wrappers/odbcsql.nim +nim/lib/wrappers/openssl.nim +nim/lib/wrappers/pcre.nim +nim/lib/wrappers/pdcurses.nim +nim/lib/wrappers/postgres.nim +nim/lib/wrappers/sqlite3.nim +nim/lib/wrappers/tinyc.nim diff --git a/lang/nim/distinfo b/lang/nim/distinfo new file mode 100644 index 00000000000..6c614eebd86 --- /dev/null +++ b/lang/nim/distinfo @@ -0,0 +1,6 @@ +$NetBSD: distinfo,v 1.1 2016/09/18 01:02:43 kamil Exp $ + +SHA1 (nim-0.14.2.tar.xz) = 6a5a4c6804cd58d2412827feee8f94121b163d62 +RMD160 (nim-0.14.2.tar.xz) = 26ebeb69a9867317761236a638766bca9cbc6150 +SHA512 (nim-0.14.2.tar.xz) = 34afd07fafd066f6b4acc423c21e1cc275dce00f575d01f0d1edc147946930cf13c772abe0c4a081e2e0091ad41f6ae5cead20cc4d9a7cb3bc628ad7469f6459 +Size (nim-0.14.2.tar.xz) = 4778444 bytes |