We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.

Talk:PsiK'

From Esolang
Jump to navigation Jump to search

Evaluation order

Since your I/O combinators have side-effects, they're not - strictly speaking - combinators, and you need to limit evaluation order somehow (see Hot, for example). Otherwise the expression k.X~Y~ may or may not produce output depending on evaluation order (evaluates to Y anyway, but may or may not output X). --Blashyrkh (talk) 06:29, 2 November 2026 (UTC)

programs are lazily evaluated right-to-left --dragoneater67 [talk|contribs] 12:21, 2 November 2026 (UTC)
Please, clarify:
  • should the program kX~ halt (only 1 arg for k, 2 are needed for beta-reduction) or should it try to evaluate X first (with possible side-effects)?
  • XY~ - which side-effects happen first - X's or Y's?
--Blashyrkh (talk) 14:01, 2 November 2026 (UTC)

. takes an argument, if it is a church numeral

I believe this if is uncomputable (in untyped functional language). --Blashyrkh (talk) 13:50, 2 November 2026 (UTC)

Your recent I/O model is not viable

You allow only one equality check for each input character. Might be ok for binary input, but certainly not enough for ASCII input. And what did you mean by "push"? --Blashyrkh (talk) 18:19, 2 November 2026 (UTC)

Unfortunate choice of combinator basis

I searched expressions up to length 13 inclusive (13 is a number of combinators; full expressions lengths were up to 25), and all I found are these:

  • I = kψ~ = kk~
  • I* = ψψ~k~k~k~ = ψψ~k~k~ψ~ = ψψ~k~ψ~k~ = ψψ~k~ψ~ψ~ = ψkk~~kk~~ = ψkk~~kψ~~ = ψkψ~~kk~~ = ψkψ~~kψ~~.

Your expression for K is incorrect. --Blashyrkh (talk) 19:40, 2 November 2026 (UTC)