John Earnest JohnEarnest

JohnEarnest commented on issue kevinlawler/kona#358
@JohnEarnest

The §,€ and ° characters are not part of the US-QWERTY keyboard layout. It would be possible to add some simple overloads to $ to get most of the d…

JohnEarnest commented on issue JohnEarnest/ok#9
@JohnEarnest

oK specifically aims to emulate the behavior of K5, the bleeding-edge in-progress iteration of K. Some of the equivalents of k3/k4 reserved functio…

JohnEarnest commented on issue kevinlawler/kona#356
@JohnEarnest

I don't think it is possible, in general, to validate currying lists at parse time, because a function may be referred to indirectly through a vari…

@JohnEarnest
@JohnEarnest
At Each Each
@JohnEarnest
Functions and Lexical Scope
JohnEarnest commented on issue JohnEarnest/ok#8
@JohnEarnest

The parser doesn't currently support quotation marks as part of symbol syntax. Marking this as an "enhancement" and adding it to my todo list.

@JohnEarnest
Greater- and Less-Than
@JohnEarnest
Spaces in String Literals
@JohnEarnest
Self-reference and IO Verbs
@JohnEarnest
  • @JohnEarnest 2924dab
    fixing a regression- setting a buzzer duration < 0
@JohnEarnest
JohnEarnest commented on issue JohnEarnest/ok#6
@JohnEarnest

I have considered ES6 generators. In the future I may try rewriting oK to use them, but at this time I don't think they are sufficiently well suppo…

JohnEarnest commented on issue JohnEarnest/Octo#11
@JohnEarnest

I replied to your email, but just for the purposes of keeping things documented I'll summarize here: Constants declared with :const are treated exa…

JohnEarnest commented on issue kevinlawler/kona#309
@JohnEarnest

I don't know how helpful this will be, but in my K implementation I represent things as follows: All name-value bindings are stored in an Environment

@JohnEarnest
  • @JohnEarnest 4a0c225
    adding some thoughts and fixing a typo.
@JohnEarnest
JohnEarnest commented on issue kevinlawler/kona#316
@JohnEarnest

Based on my reading, this applies the "internal datatype" IO verb (4:) to the result of executing (.) the character string formed by a backslash fo…

@JohnEarnest
  • @JohnEarnest 2a2b07b
    clearing up ambiguity in implied indexing. This actually demonstrates…
@JohnEarnest
  • @JohnEarnest 4dd91a9
    checking in a guide to basic programming techniques in K, based on my…
@JohnEarnest
  • @JohnEarnest e1981cd
    in some situations, applyadverb() was being passed unevaluated namerefs.
@JohnEarnest
  • @JohnEarnest 84a65c2
    correcting an escaping error. URI encoded strings can contain single …
@JohnEarnest
  • @JohnEarnest 54957ed
    simplifying. Using cast removes the need for a clumsy lookup table an…
JohnEarnest commented on issue kevinlawler/kona#311
@JohnEarnest

Took a little while to try to boil this down to a smaller reproduction case. It looks like this is enough to produce a crash: {{x[2]}[x],0}["AB"] S…

JohnEarnest commented on issue kevinlawler/kona#309
@JohnEarnest

Simpler reproduction case: {m:{x,y}[5]; {m[x]}[3]}[] 3 {m:{x,y}[5]; m[3]}[] 5 3 The problem does not occur at the global scope: m:{x,y}[5]; {m[x…

JohnEarnest commented on issue JohnEarnest/ok#6
@JohnEarnest

Let's take the easy route. I corrected the typo in my repo. Back out the change in your fork and then merge in my upstream changes. Then you'll be …