About...
Greetings! I'm William Gilreath (he/him/his)
I am a multifaceted senior software engineer, computer
scientist, mathematician, poet, writer, and lover of cats.
I love working with software developing, testing,
writing, and analyzing source code. In my spare time, I write
both code and technical articles, and narrative prose: novels,
short stories, book chapters, and poetry.
I showcase some of the algorithms, code,
programming languages, research papers, and software I have
created, written, and published.
I am currently a Senior Machine Learning
Engineer (Senior ML Engineer) with VMware, Inc. located in
Palo Alto, California working with software development in machine learning (PDF 3.6 Mb)
in OCTO the Office of the
CTO.
Blog...
I have an inactive blog about my technical
dabbling and other things...entitled Much Ado About Nothing where I write
about this, that, and the other, but not of late. Note that I
am not on Facebook, Instagram, Twitter, MySpace, and
other social media too much melodrama, and I do not want my
personal life (and personal data, information) on the
Internet.
ZeptoN...
My current technical project is a new programming language "ZeptoN Blog" from "zepto" +
"N". A small programming language (zepto- is a factor of 10-21)
that is the Nth programming language (as programming languages
go from 1 to N) where this is the Nth programming language.
The ZeptoN whitepaper [ epub
(5.9 Mb) | pdf
(6 Mb) ] describes the ZeptoN language, its goals,
and gives many examples with output to illustrate the ZeptoN
programming language.
ZeptoN extends Java by adding a program entity "prog"
construct like a class (without the object-oriented
trimmings), with an implicit program entry point as a block. Yet ZeptoN is
completely Java syntax and concept compatible. ZeptoN puts the
program back into Java programming!
ZeptoN is now available on my GitHub repo for download, or the GitHub page. This is the ZeptoN "Echo"
transcompiler which transpiles to Java, and then uses the Java
Compiler API to build a Java bytecode .class file.
I have had an article about ZeptoN
published on JavaCodeGeeks describing extending the
language. I am developing and tinkering with Zeptor the ZEPtoN
code editOR, a ZeptoN source code editor with an integrated
ZeptoN transcompiler. A basic ZeptoN integrated development
environment.
Here is a Youtube! video (with
accompanying Zither music from the classic movie "The Third
Man" playing as various ZeptoN program
programs are opened, compiled, and run. Check it out! And if
interested, I'm looking for those interested in trying out
ZeptoN
using Zeptor.
ZeptoN extends Java by adding a program entity "prog"
construct like a class (without the object-oriented
trimmings), with an implicit program entry point as a block. Yet ZeptoN is
completely Java syntax and concept compatible. ZeptoN puts the
program back into Java programming!
Here is an example of a ZeptoN program, the ubiquitous and
infamous "Hello, World!!!" program....
ZeptoN Code Example...
prog helloWorld {
begin {
println("Hello,
World!!!");
exit(0);
}//end begin
}//end prog helloWorld
Books...
Here are some books I have written.
Research Papers...
Here are some theoretical research papers I have
written, and have been published by the General Science Journal .
Check out my Google
Scholar or Microsoft
Academic with my other works. https://orcid.org/0000-0002-1825-0097
Source Code...
-
WEJAC - Will's Elided Java Api Compiler, a
javac alternative that has simpler and fewer command-line
options. The user manual for WEJAC is available as an e-book on Smashwords in various
formats.
-
DBXShell - the DropBoX shell connects
to a DropBox storage
account, and perform file and folder operations in
command-line interface client.
-
Boz
- compiler for a programming language "Boz" (a pen name of
Charles Dickens) developed using JavaCC .
-
Hash Sort - sorting by
hashing into a N x N matrix data structure; implement in
C/C++, Java, Python.
-
XML Tokenizer - XML tokenization into
tags, attributes, text, for an XML token stream
implemented in Java.
-
Binar Shuffle/Sort - shuffle
(unsorting) and sorting by using bits of binary datum.
-
FunCL -
(rhymes with "uncle") interpreter for the FUNctor Clause
Language, a functional style programming language that is
both like Forth and LISP but without the reverse Polish
notation or parenthesis.
FunCL Code Example...
DEF HELLOWORLD
PUSH
EOLN PUSH "Hello World!!!" ECHO ECHO .
HELLOWORLD
.
Technical Articles...
Me...
I am a multifaceted senior software engineer,
computer scientist, mathematician, poet, writer, and lover of
cats.