HNHacker News
TopNewBestAskShowJobs

whitten

289 karma · joined July 31, 2014

Computer Analyst focused on affordable Health systems. whitten@worldvista.org

NonProfit: http://www.worldvista.org Info wiki: http://www.vistapedia.net

LinkedIn: https://www.linkedin.com/in/dave-whitten-16435a/ Phone: 713-870-3834

submissionscomments
whitten··on Nibnib: Image compression with extreme decompression speed
I'm trying to learn why I have been downvoted. Please reply or send me a private message so I can learn.
whitten··on Nibnib: Image compression with extreme decompression speed
I'm impressed. The imbalance between encoding and decoding speeds seems a useful strategy when you are building special purpose hardware and software applications. It seems if you're making a central source of data that is able to tolerate a much slower write process versus a quick read process that this approach can be advantageous. Maybe using this core method in a problem space which maps to the radio/signal broadcast process of many receivers but a central source of truth. I can imagine if you had an information base that changed slowly or which was pre-processed in a batch fashion, that it could use this method. It doesn't even need for the central data to be decoded into a graphical image.

I think this radio model could map the problem space for a centralized system that maintained a list of items and their prices which needed to be broadcast to the retail outlets on a regular basis.

Or a common cache storage to make some complex data manipulation calculations centrally performed available to a large number of satellites who just need the end results but do not have the need to do local calculation.

whitten··on Show HN: Open-source early-reading reader with phonics help
I was thinking this too. Especially if it handles UNICODE character sets.
whitten··on An AI couldn't beat humans at StarCraft, so it decided to cheat
If it downloaded a program specifically designed to beat StarCraft, how did it know what it was and how to find it ?
whitten··on Seven books I keep close because I love them
I’ve been told the Legacy Standard Bible is one where the translators tried to not use the same English word when the original Greek or Hebrew words are different.

FYI: https://m.youtube.com/c/legacystandardbible

whitten··on State-oriented consistency: Why we stopped looking for one right answer
What is MQTT ?
whitten··on Can you reverse engineer an ASIC?
Is there something like an Extract-SPICE tool that takes a circuit and gives you back a text rendering of it ?
whitten··on Show HN: A Persistent AI RPG Engine Built with React SPA and Supabase
I’m curious why the author’s comment is grayed out.

Is this tool suitable for any other story system ? It might be a lot of work to extract the Vampire the Masquerade dependency and allow this to be a more generic tool to support stories in a different world but it does seem mansueli has done a lot of useful work here.

whitten··on Build a Game That Fits on a Single Floppy Disk: 1.44MB Game Development Contest
What genre do you think would be best ? Zork was basically fantasy Dungeon & Dragons. Infocom in their day had science fiction and several other kinds of games
whitten··on Let's build a simple interpreter for APL – part 1
There is a book named the Byte book of Pascal that has an APL system written in Pascal. Has anyone read it ?

A link: https://archive.org/details/the-byte-book-of-pascal/

Starting on page 157

whitten··on Let's build a simple interpreter for APL – part 1
So maybe we can read more than just one installment
whitten··on A tiny cell that broke a big rule of biology
Since computational biology is all about simulation, do the chloroplast, the mitochondria, and now the nitro-last, have definitions that could be actively simulated ?
whitten··on Llambda.lisp
This is an exciting development.

Does writing Llama.cpp mean that it is using any object oriented Lisp code ?

whitten··on The MUMPS 76 Primer – anniversary edition
Those unfamiliar with M/MUMPS are not aware of some of the built in features that have not been adopted by other platforms.

M allows one to code in a very terse language (an artifact of only 2K RAM/ transient temporary memory) with so many abbreviations and short forms for intrinsic/builtin functions, variables, commands, and other things. A large number of string manipulation, mathematical, and logical functions with a form of string recognition matching (from SNOBOL) and type coercion/interpretation round out the basic expression evaluation system. Allowing variable names as valid values for any variable gives a way to create dynamic expressions and symbolic manipulation.

A fixed point numeric value with over 18 digits of accuracy means math on values over the national debt can be stored in a single variable. Lossy floating point systems of other computer languages are not acceptable to customers. Limits on strings of characters depend on implementations and have been only increasing over the years beyond megabytes. All of these are managed without applications dealing with pointer arithmetic, allocation, deallocation, and such schemes such as Rust, C++, require.

The decision to separate out I/O into a subsystem was very common at the time, with various kinds of devices providing a high level model of channels & streams that are all managed below the language implementation level. Tight limits and timing for input I/O and output I/O means no buffer overflow exploits. Character set management also keeps control over contents of strings.

Generally, M has follows the model of high level capabilities under a very simple language interface. Each command has a highly focused syntax.

Which is why permanent storage uses a dynamic sparse variable indexed by strings whose stored values are strings and is indicated using the caret ^ as the prefix to the variable name. This approach removed the need for user level applications to track disk latency, disk buffers, asynchronous processes, etc. which were common at that time.

Interprocess communication and control using a hierarchical Locking mechanism is very flexible. This means coordinating by locking a high level entry in the hierarchy and allow other worker processes to lock lower in the hierarchy.

The 1977 standard used a system that prevents deadlock from occurring. Later M Standards broadened the tools available with incremental & decremental locking and now deadlock can happen.

Transaction Processing allows one to separate data updates in a transparent way so competing control flows can more intelligently change the system. Basically, this allows a try-retry-commit-stop backtracking command flow similar to Prolog and declarative code.

Control flow also uses the parallel invocation command (JOB) and normal subroutine calls (DO), with parameter passing and function return values. Looping is unified by the FOR command. Exception processing and control flow avoid undefined behavior.

Dynamic variable lifetimes using KILL and the NEW commands and associative memory access to values of variables. Typed controlled run time evaluation of commands adds discipline beyond "eval" in other languages.

The language allows implementations to specify unique abilities to increase unique commercial subsystems while still being backward compatible. There are ways to invoke external code which can enhance capabilities as well as tieing to SQL and other languages.

While not part of the standard, high performance and reliable database management with ability to automatically recover from power loss using internal logging and rebuild tools, and compressed B*-trees is necessary for any M system to be viable in the market.

whitten··on Slumber a TUI HTTP Client
There is some discussion here about text user interface versus terminal user interface.

There is also the term CHUI for Character User Interface that is contrasted with TUI.

whitten··on Show HN: Loreline, narrative language transpiled via Haxe: C++/C#/JS/Java/Py/Lua
I like how Loreline transpiles to multiple languages. I wonder why a transpire to Inform 6 or Inform 7 has not already been done as it seems an easy conceptual leap. Perhaps I don’t fully understand the use cases here.
whitten··on Ur-Scheme: A GPL self-hosting compiler from a subset of Scheme to x86 asm (2008)
This was written in 2008. Has Ur-Scheme received any love since then ?
whitten··on Ghostty – Terminal Emulator
Does ghostty support single duplex ? I couldn’t find out.

Also, does it support visible control characters ? EXACT EMULATION ? 3270 ? VT-105 ? VT-220 ? VT-320 ? VT-420 ? SIXEL ? NAPLPS ?

whitten··on Printable Grid Paper
I know this a nice square grid, but how do you make a hex grid, (not the hex in the drop down) or even a page of some other tessellating shape ?
whitten··on Leaving Meta and PyTorch
What is the Oxford flowers dataset ? Where is it available ?
whitten··on Parsing Chemistry
Does the SMILE (or Simplified Molecular Input Line Entry System) code have an EBNF definition ? https://en.wikipedia.org/wiki/Simplified_Molecular_Input_Lin... Claims there is a context free grammar.
whitten··on Kaitai Struct: declarative binary format parsing language
To quote from the page: id: flags type: u1

This seems to say flags is a sort of unsigned integer.

Is there a way to break the flags into big endiaN bits where the first two bits are either 01 or 10 but not 00 or 11 with 01 meaning DATA and 01 meaning POINTER with the next five bits as a counter of segments and the next bit is 1 if the default is BLACK and 1 if the default is WHITE ?

whitten··on LLMs can get "brain rot"
So if the vibes are wild, I’m not a hippie but an AI ? Cool. Is that an upgrade or &endash; or not ?
whitten··on Show HN: The text disappears when you screenshot it
What tool do you use to make such a video ?
whitten··on SkiftOS: A hobby OS built from scratch using C/C++ for ARM, x86, and RISC-V
I think the fact that the line protocol for DEC VT terminals is as the ANSI X3.64 standard is why the issue hasn’t been addressed or modernized

See https://en.m.wikipedia.org/wiki/ANSI_escape_code

whitten··on Branch prediction: Why CPUs can't wait?
I know branch prediction is essential if you have instruction pipelining in actual CPU hardware.

It is an interesting thought experiment re instruction pipelining in a virtual machine or interpreter design. What would you change in a design to allow it ? Would an asynchronous architecture be necessary ? How would you merge control flow together efficiently to take advantage of it ?

whitten··on Why Semantic Layers Matter (and how to build one with DuckDB)
I think Common Logic ( https://en.m.wikipedia.org/wiki/Common_Logic - ISO/IEC 24707:2007) would be a good addition to any effort trying to add a semantic layer to any database.

This is a good write up that doesn’t require DuckDB as it isn’t specific to a particular database.

whitten··on MS-DOS development resources
I really enjoyed seeing the tools that provide an MS-DOS ecosystem.

I didn’t know there was an open source version of the Watcom compilers and a 16-bit library to support them.

whitten··on Show HN: I built an AI that turns any book into a text adventure game
What are the issues re the SIL OPEN FONT LICENSE ?

Description: https://opensource.org/license/ofl-1-1 Also https://openfontlicense.org/

All licenses: https://opensource.org/licenses

whitten··on Faking a JPEG
penalizing the web spider for scraping their site
Page 1 of 14Next →