Information
- Location
Jersey City, NJ, USA - Associations
-
Member NYC J User's Group.
Active participant in the J Forums . Want to see my favorite forum post?
Member ACM . If you're not, but you'd like a copy of an article from the ACM's digital library, I am happy to provide it to you; just ask.
j@bron.us
- IM
Transport
Identity
AIM
DanJBron
Yahoo!
DanJBron
MSN
DanJBron@hotmail.com
IRC
See the J IRC channels.
Please note that while all these IM addresses have associated email addresses, I do not use them and never check them. To contact me via email, use the address above.- Wiki
I'm also known as DanBron on Wikipedia and DanBron on RosettaCode (though I'm mostly an anon-ip editor at both places).
Public Request
I am seeking old versions of J
, both stable and beta. I am also seeking old versions of the documentation (if separate from the installers). I would like to build as comprehensive a catalog as possible, for a project I will announce soon.
So, if you have installers for old versions of J, please get in touch with me. I prefer Windows versions, but can accept Linux as well.
Comments
This page is only editable by me, but if you want to leave me a note or message, you can edit my comments page. Or you can email or IM me at the addresses above.
Contributions
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
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).
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.
Project |
Description |
Attempt at creating another implementation of J (J within J). Closely related to the "Hierarchy" essay. |
|
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. |
|
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. |
|
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". |
|
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). |
|
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. |
|
Defines an adverb like f. which fixes only local names |
|
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. |
|
Other stuff I haven't yet added to this table. |
|
Utility to unlock J scripts locked with 3!:6 |
|
A utility which implements the standard Read Evaluate Print Loop interface pattern. |
|
Musings on how to manipulate axes in J, using an interesting idiom as a macguffin |
|
Seeds of ideas for Puzzles/GooglePoetry. Will be added there when they're finished. |
|
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) |
|
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.
- 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".
Stuff only for me
The job's not done until you tittlate the is ...
