Location: New York City, NY, USA
- Member NYC J User's Group.
- Participant in the J Forums . Want to see my favorite forum post?
- Contributor to J implementations on RosettaCode.org.
This page is only editable by me, but if you want to leave me a note or message, you can edit the Talk page. Alternatively, I keep up with the Forums (in recent years, I check it less frequently), or you can email at j at bron dot us (similar caveats: I'm don't check that email address very frequently).
Full, useful contributions. Note that because this is Wiki, I may have only made the initial contribution; others may have improved it over time.
- PrimitivePrimitives : An attempt to specify and document each primitive in terms of the other primitives. Good tool to learn how a specific primitive works.
- A Fine Line : An Essay providing a simple and intuitive sketch of the frame/cell concept in J.
- Demographics : A table of J users, their locations, and their reasons for using J.
- Community/IRC : A description of the IRC channels dedicated to J.
- QDoJ : You'll see me use and reference the verb qdoj in my Forum posts. This is its definition. It is intended to allow me (and others) to be specific when quoting the dictionary of J. It should facilitate communicating about meta-J issues.
- Papers on how to configure the J accessory tools wget and svn to work with proxies. Useful if your J installation is on a computer behind a corporate proxy or firewall.
- A Guide to lexical closure in J.
- A stupid interpreter trick, whereby a verb's valence alternates based solely upon (the parity of) the number of times the verb's been invoked.
- Style My thoughts and personal preferences on programming style.
- Various Puzzles
- Google Poetry
- J Quines
- Sum to N
- Error prone sort
- Uploaded a copy of An Implementation of J, because the IOJ wiki page is just a table of contents and one appendix (and the page itself is frustratingly immutable), and because I couldn't find it anywhere else (neither the APL bibliography nor the J papers mentions it).
- An Essay describing the tie conjunction (also known as `, backtick). Originally written for NuVoc, but didn't make the cut. I still think it's informative.
Works in progress
Projects I've actually started and hope to finish. Not ready to move off my user sub-pages yet, but feel free to browse around.
|Parse, Lex, Execute||Attempt at creating another implementation of J (J within J). Closely related to the "Hierarchy" essay.|
|Heirarchy essays||Attempt to describe the heirarchy of intepretation of a sentence or a script within J. Clarify certain processes. Full version to be on Wiki, reduced version to be submitted to SIG APL.|
|My J SVN Project||Lots of scripts I've written or stolen. Not composed or documented well enough for public consumption (though you're welcome to them), I mostly use J's SVN server to keep my work and home script bases in sync.|
|Lexical Closure||Not really about lexical closure anymore, this page is intended to demonstrate a convenient method for defining a verb with named variables (that can have default values, be type checked, be preserved across calls, and other neat things). Strongly related to some of my "Works intended".|
|Snippets||Not full scripts like in my SVN project; more cut-and-paste passages from my J sessions. Usually slapped together with some specific intent and then tossed. But if I feel there's some hope a snippet will mature into a full, useful script, I will upload it here. Sometimes I do it only to save bandwith on the J Forums (I'll upload a snippet to the Wiki and then post the __link__ to the Forums).|
|Snippet: Verb Metrics||The beginnings of a useful script that will help Jers compare the performance of different, ostensibly equivalent verbs. Will be helpful determining which algorithm is best used to solve a particular problem (or on a particular dataset). I hope to punt the responsibility for expanding it to NYCJUG.|
|Fix Locals||Defines an adverb like f. which fixes only local names|
|Snippet: DOOG||Distribute Operators Over Gerunds emulates and extends the distributive property of compositions that was decommitted in J601c. A utility on the page provides a mechanism to apply a list of verbs (a gerund) to a corresponding list of nouns.|
|Temp pages||Other stuff I haven't yet added to this table.|
|Script unlocker||Utility to unlock J scripts locked with 3!:6|
|Read Evaluate Print Loop||A utility which implements the standard Read Evaluate Print Loop interface pattern.|
|The Art of Shaving||Musings on how to manipulate axes in J, using an interesting idiom as a macguffin|
|More Google Poetry||Seeds of ideas for Puzzles/GooglePoetry. Will be added there when they're finished.|
|Parser Bugs and Proposed Resolution||There are bugs and inconsistencies in and between the description and implementation of J's parser (or, rather, parsers; both top-level and explicit scripts are problematic)|
|SAJ||Re-introduces single assigment semantics to J.|
Works in .. tended
Projects I have the seed idea for, but have not actually started work upon. Would be useful contributions to the J community if I got off my lazy ass.
- Reimplementing J
- J YAML Parser
- J GUI generator (similar to XForms)
- Full depth parameterizing
- J configurator (ini, command line, environment variables)
- YAML + parameterizing + configurator + gui generator = auto gui generator from program source
- Full J reimplementation (AnotherImplementationOfJ)
- J documentation a la the RegEx explainer, perhaps with certain animations a la Animated Mathematica Functions (a good idea from Kirby Urner).
- Re-implement simple unix utils as a motivating introduction to J. A la Simple Unix Utils in Haskell.
- Cut to Fit . An Essay on indexing and selection in J, demonstrating how to accomplish common tasks, and highlighting some of J's more interesting, if obscure, selection mechanisms, e.g. <;.0 and 'x' (< (<<2),(<<2)) } 5 5 $ ' ' . (I think I stole that idea from Henry Rich. I don't know the exact message, but this one demonstrates the idea. I loved it when I saw it.)
- Jems . An Essay on Jems: J-gems. Examples will include ASCII art, ZigZag order, evolutes and involutes, EwartShaw's gorgeous solution 5 to the 17014... Puzzle (i.e. that (<:@^^:^~2x) -: <:2^127x), Arie Groeneveld's Fibonacci rabbit sequence (,#;._1)^:(]`1:), RE Boss' improvement to comb, Statisical correlation expressed as (+/@:* % *&(+/)&.:*:)&(- +/%#) (I thought I invented it but turns out Oleg has priority), f`g;.1~ 1, 2 ~:/\ h, particularly where g involves $: (see REB's use case and potential for generalization) and more.
- Taint. An essay on "taint mode" in J; the various ways to evoke (vs invoke?) code in J, and how to protect your CGI scripts.
- What is tacit? An Essay attempting to capture the spirit of tacit code: "Tacit expressions can take arguments, but can't mention them".