Releases: acook/blacklight
Releases · acook/blacklight
v0.2.0
What's Changed
- better error messages by @acook in #23
- Standardize Refl Output by @acook in #26
- Use atomic instead of mutex for Stack ID creation by @acook in #27
- Bugfix: Passing mutex by reference by @acook in #28
- Multiple iterative improvements to error messages
- Started colorizing
refl
output for better clarity - Added
exit
instruction - Rename
compile
tot-to-b
- Remove current
v-to-b
instruction for now - Improved disassembler
- Syntax highlighting for VS Code
- Compiled with Go 1.22.1
Full Changelog: v0.1.1...v0.2.0
WIP: Internal Errors
This is a mid-development release demonstrating greatly improved error messages for the compilation step, source maps which show the offset of the erroneous token in the original file.
This build also uses a much newer version of Go, which results in much smaller and faster binaries.
The attached zip file contains executables for macOS, Linux, Windows, and LinuxARM.
blacklight v0.1.0
This version of blacklight introduces O
objects, C
chars, file IO, better syntax for WVs, and overall improved handling of vector types.
Additions
- Objects
- Object WV slot evaluation
- Object delegation
- File Descriptor IO (stdin, stdout, stderr)
- File IO
- Arbitrary WV nesting
call
op for evaling arbitrary WVs- C (char) datatype
- C's can be
app
'd into CVs q-to-cv
op- Stack ID assignments are now threadsafe
- WV and CV now supports all basic V ops
Breaking Changes
- Square-bracket WV notation (formerly delimited by dots)
n-to-s
becamen-to-cv
not
returns nil for all non-true items (formerly panicked on non-T types)rmo
op has no return value (formerly returned value removed)
Internal
- ops_stack type used internally for WV nesting
- Removed many type assertions, should greatly increase execution speed
- object-stack tracks
self
, but not currently directly exposed
Updates
- Most documentation moved to GitHub wiki
- Project tracking moved to Trello
- Contributing guidelines
Known Issues
- WV manipulations are not reflected in calls
- v-new does not produce valid WVs
blacklight v0.0.1
This is the first official release of blacklight a programming language for fun and profit.
Here is some of what it includes:
- Over 50 operations
- 15 example scripts
- Threading with OS threads:
bkg
,work
, andco
operations - Multiple datatypes: integers (
N
), stacks (S
), queues (Q
), vectors (V
), strings (CV
), words (W
), and word vectors (WV
) - Thread-safe data structures
- Stack roles: meta-stack (
$stack
), system-stack (@stack
and^stack
), and user-stack (theS
datatype) - Dynamic stack operations and ability to promote user-stacks to system-stacks
- Communication between threads using the
Q
datatype - Printing to stdout with the
print
operation
What's missing?
- The object (
O
) datatype and their operations - File and Socket IO
- Character datatypes and escapes (most notably single quotes)
- Any real commandline tools (blacklight runs files, that's it)