Factor 是concatenative,基于堆栈的编程语言和高级功能,包括动态类型,可扩展语法,宏,和垃圾收集。在实践方面,有一个全功能的、支持许多不同的平台上的库,被广为记载。 示例代码: USING: io math sequences ; "Hello world" print 10 [ "Hello, Factor" print ] times "Hello, " "Factor" append print 性能比较: Factor 0.97 发布,此版本现已提供下载: OS/CPUWindowsMac OS XLinux x860.97 0.97 0.97 x86-640.97 0.97 0.97 Source code:0.97 此版本包括超过 1,400 个 commits,贡献者如下: Alex Vondrak, Andrew Pennebaker, Benjamin Pollack, Björn Lindqvist, CW Alston, Doug Coleman, Erik Charlebois, Fred Alger, Iskander Sitdikov, John Benediktsson, Jon Harper, Loryn Jenkins, Paul Woolcock, Roc King, Samuel Tardieu, Steven Stewart-Gallus, and @Profpatsch 同时还有一些 bug 修复和库改进,值得关注的改进如下: 支持更多的 color spaces :LAB, LCH, LUV, RYB, xyY, XYZ 和 YUV 支持 Windows 的 SSL 添加了一些新的 checksum 实现和性能提升 跨平台 C 库 finder IMAP 协议客户端 支持 MessagePack 编码和解码 支持 uuencoding and uudecoding 支持 terminfo 数据库文件 支持 tzinfo 文件 Support for in-place sorting (using Quicksort) 绑定了 ZeroMQ 和 Python Runner for Applescript (including definition support) printf 性能提升,支持 vprintf 支持在 GTK,Cocoa 和 Windows 后端保存图像 Generative Modeling Language 为编译器添加了大量的文档 大量的 FUEL emacs 模式改进 解决了一些向后兼容问题: Fixed mask? in math.bitwise to be more correct Fixed bias in Mersenne Twister random number generator Better support for shebang (no longer need a space after #!) io-error now lives in the libc vocabulary sender stubs in cocoa.messages now named by method signature filter now allocates length of seq, not exemplar. Removed make-assoc in favor of explicit get's. 一些 FUEL 改进,Factor's emacs 模式: Modernize for emacs 24.3 Prepare FUEL to be uploaded to MELPA Change font locking and syntax highlighting Make fuel-help work for vocabularies also New minor mode: fuel-autohelp-mode Fix word help to use correct vocabulary using list Variable controlling whether fuel-mode is loaded automatically Fixes to table rendering 新库: alien.libraries.finder: cross-platform C library finder checksums.fletcher: Fletcher in 16/32/64-bit checksums.murmur: MurmurHash3 in 32-bit checksums.superfast: SuperFastHash checksums.xxhash: xxHash in 32-bit cocoa.apple-script: runner for AppleScript colors.distances: CIE76, CIE94, CIEDE2000, and CMC l:c color differences colors.lab: support for CIE 1976 LAB colors colors.lch: support for CIELCH colors colors.luv: support for CIE 1976 LUV colors colors.ryb: support for RYB colors colors.xyy: support for CIE 1931 xyY colors colors.xyz: support for CIE 1931 XYZ colors colors.yuv: support for YUV colors compression.snappy: bindings to snappy compression library crypto.aes: lookup-table AES implementation cuesheet: parser for CUE files curl: bindings for libcurl editors.atom: support for Atom text editor fftw: bindings to FFTW library gml: support for Generative Modeling Language grouping.extras: helpful words html.entities: escape and unescape HTML5 entities imap: client for IMAP servers io.encodings.utf7: support for UTF7 encodings io.streams.ansi: support for ANSI color streams magic: bindings to libmagic marvel: support for Marvel.com API math.combinators: some convenience words matrices.laplace: adding Laplace expansion math.unicode: implement unicode math symbols pcre: bindings for PCRE python: bindings for Python random.rdrand: random number generator using RDRAND instruction rosetta-code.josephus-problem: solved rosetta-code.metronome: solved sorting.heap: implement Heapsort sorting.quick: implement Quicksort spotlight: adding Spotlight search wrapper for Mac OS X terminfo: parser for terminfo database files tzinfo: parser for timezone files tools.dns.public: adding well-known public DNS servers uu: support for uuencoding and uudecoding yaml: reading and writing the YAML format youtube: downloader for youtube.com wikipedia: support historical events and article printing windows.ntdll: process listing on Windows windows.winmm: to play MP3 files zeromq: bindings for ZeroMQ 改进的库: arrays.shaped: iteration with indices, mapping operations bson.reader: support reading sequence of BSON objects from a file calendar.format: fix timestamp parsing without a timezone (fixes #861) calendar.threads: support M\ timestamp sleep-until circular: adding circular-loop color-picker: show hex value of color combinators.extras: more words concurrency.combinators: adding parallel versions of cartesian-{map,each} destructors: faster dispose-each dlists: adding push-before and push-sorted dns: support custom DNS server lookups environment: adding with-os-env for using temporary environment variables formatting: performance improvements, added vprintf for runtime formatting google.translate: adding translate-tts graphviz: miscellaneous improvements by @ajvondrak grouping.extras: more words hash-sets: minor cleanup hashtables: minor cleanup help.html: use tools.completions for searching html.parser.analyzer: make find-between* work on nested tags html.parser.printer: better html-text. http.client: versions of http-get and friends that don't check response code infix: adding INFIX:: word definitions interpolate: adding generalized numbered string interpolation io.binary: faster le> and signed-be> and signed> io.binary.fast: generic be> and le> that try to be fast io.directories: adding with-resource-directory io.encodings.string: faster decode and encode for ascii and utf8 io.sockets.secure.openssl: fix subject name checks io.streams.byte-array: performance improvements io.streams.random: performance improvements io.streams.string: performance improvements ip-parser: adding ntoa and aton math.bitwise: adding bit-length math.combinatorics: performance improvements, k-permutations math.extras: more words math.factorials: adding factorials math.functions: implement ldexp math.matrices: performance improvements math.ranges: implement sum on range objects math.statistics: fix out-of-bounds in quantiles, more words math.text.english: support ratio, float, complex mirrors: strings can be inspected-sequence (fixes #857) openal.examples: adding play-waveform and play-sine pack: support numbered format strings (e.g., "4ci") random: performance improvements random.mersenne-twister: bug fixes redis: adding hash commands, upgraded to modern protocol semantic-versioning: support for Semantic Versioning 2.0.0 sequences: implement sum on iota-tuple objects sequences.extras: more words sequences.product: performance improvements sequences.windowed: performance improvements sets.extras: more words sorting.insertion: performance improvements spelling: minor fixes and performance improvements spider: ignore non-html files system-info: implement system-report. on Linux. tools.deploy.config: specific deploy-directory tools.dns: adding dns-host to lookup from a specific host tools.test: allow testing from command-line twitter: updates units.imperial: more units unix.users: add utility word to find a user's home directory unix.utmpx: support on Linux and fixes on Mac OS X webbrowser: support open-file on pathname objects Factor 0.97 发布,基于堆栈的编程语言下载地址