-
Notifications
You must be signed in to change notification settings - Fork 0
The Zn language compiler, runtime, and interactive console.
bluejack/Zn
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
~ The Zn Language ~ v0.02 --- Copyright (c) 2010-2014, Blunt Jackson --- Welcome. Zn is a personal effort at language design and a learning experience in compiler construction and extensible runtime development. Zn (pronounces 'zinc') is intended to support Task Oriented Application Development (TOAD): Objects and Tasks are both first class language structures. While Zn is a pragmatic language in the imperative style, it draws inspiration from Erlang in attempting to bring simple, intuitive, robust, and efficient solutions to parallel processing by the use of a message-passing architecture and immutable shared objects. : Want to read the code? Follow the trail. Begin at the beginning, with main : : http://github.com/bluejack/zn/blob/master/src/apps/zn/zn.c : -------------------------------------------------------------------------------- STATUS -------------------------------------------------------------------------------- Overall: Skeleton functionality Shell: Primitive command execution in place. Runtime: Skeleton with output only, interactive mode only Compiler: Skeleton with single keyword only, no actual compilation yet. Current: Compiler->Basic Parser Scaffolding -------------------------------------------------------------------------------- Usage: $ zn <-- Shell Mode $ zn file.zn <-- Interpret and execute file.zn $ zn -c file.zn <-- Compile file.zn to application 'file' -------------------------------------------------------------------------------- Shell: ( ) Input to child processes ( ) Wildcard expansion ( ) User identification & permissions management ( ) Chaining programs ( ) Redirecting stdin/stdout Runtime: ( ) Basic state management (.) Symbol table, first draft [x] Hash Table Primitive available! ( ) Establish standalone mode for file interpretation ( ) Hello World (standalone) Compiler: ( ) Hello world -> C -------------------------------------------------------------------------------- : Plans are only good intentions unless they immediately degenerate into hard : : work. -- Peter Drucker : -------------------------------------------------------------------------------- Completed (X) [26.12.2010] Command history (X) [26.12.2010] Left/Right arrows, ctrl-a, ctrl-e (X) [26.12.2010] Detach from shell command (X) [26.12.2010] Replace ncurses w/ termios terminal access (X) [26.12.2010] Research Termios/Termcap alternatives to ncurses (X) [26.12.2010] Hello World (interactive) (X) [26.12.2010] Connect to shell display (X) [26.12.2010] Connect to Zn runtime (x) [18.12.2010] Basic parser scaffolding (x) [18.12.2010] Test linking a second parser (x) [18.12.2010] Connect to runtime (X) [13.12.2010] Basic unit test support in framework (X) [11.12.2010] Scrolling window (X) [11.12.2010] Correct command execution w/ stdout pass through (X) [11.12.2010] Experiment with ncurses display (X) [10.12.2010] Assign environment variables (overwrite, append) (X) [10.12.2010] Multiple commands per line (X) [10.12.2010] Adopt & pass on environment (X) [10.12.2010] Shell parser scaffolding
About
The Zn language compiler, runtime, and interactive console.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published