summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
authorkamil <kamil@pkgsrc.org>2016-09-18 01:02:43 +0000
committerkamil <kamil@pkgsrc.org>2016-09-18 01:02:43 +0000
commit83c2b79fd654459a2d23b29667aff04c31e6e0b4 (patch)
tree0df578c511a2df79e223fd536d7400badaf53cb0 /lang
parent0b90110bab26cf313dbae183701203802065f91e (diff)
downloadpkgsrc-83c2b79fd654459a2d23b29667aff04c31e6e0b4.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/DESCR11
-rw-r--r--lang/nim/Makefile28
-rw-r--r--lang/nim/PLIST349
-rw-r--r--lang/nim/distinfo6
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