Key in anything. Faulty language is faulty everything from there on out.
What about this?
Key in anything. Faulty language is faulty everything from there on out.
In Oct’23 a basic Text widget with Subprocess to run shell commands allowed me to take my command line fu into a different arena because Tkinter gave me special tricks. This tool (shell functions) allows me to type up GUI apps or any Python script with less effort, for my fingers and brain.
wc newide; ksh newide | wc
513 1671 11018 newide in pnk
604 1987 29867 newide in python
The blocks of color are capital letters colored using tkinter methods (tag_add & tag_configure) with a bg and fg of the same color to make it look like a lego block, it’s all ASCII. On the right, an idle clicker game/toy made with pnk.lang, also just ASCII/UTF-8. The IDE you see in the pic also was coded using functional shell language I call pnk.lang and the original first iteration of this specification is in the legacy folder in the repo below. Just me learning how to code faster in Python but in shell but in neither at this point.
https://github.com/dislux-hapfyl/pynksh
Don’t be put off by Ksh because Bash can also interpret it, since it’s just shell functions that print Python code. But I have plans to use an Xbox controller so I can move away from building with the keyboard at piecemeal rates. I will do this by abstracting away identifiers and all data we use as engineers into “dictionaries” to then transform it into a spatial system. I already done this first step! Using a basic grid with a maximum of 10 rows x 3 cols, indexing row[0-9] col[0-2], as you see there on the left side, and by using a letter I then categorize the functions of pnk(shell+python) so I can have 30 x 26[a-z] available slots; a00 b11 k22 and so on…by making it a visual shortcut that reduces cognitive load and typing for me.
Take a closer look at my repo without dismissing it too quickly. It could seem unnecessary but maybe someone else can see what I have made as useful and how we gonna take it to higher levels of abstraction and create a new realm for making computer applications in an abstract game/IDE of art and code. Perhaps it’s that creator effect that happens when you make something for the first time that makes me see its future utility and appeal. All this was made incrementally using my own software I built from scratch. I do have a great vision and would love to speak to anyone who is interested. I also demonstrate the utility of this small tool on youtube[link in repo]. Thanks.
Fork it and Make Pull Request. 👍
Yeah! What he said!
I learned so much from this! Its funny I have been working on shell stuff.
Meta [
Title: {Fizz Buzz math "game"}
Author: "Kaj de Vos"
Rights: "Copyright (c) 2021,2022 Kaj de Vos"
License: {
PD/CC0
http://creativecommons.org/publicdomain/zero/1.0/
}
Notes: {
https://en.wikipedia.org/wiki/Fizz_buzz
https://wiki.c2.com/?FizzBuzzTest
https://www.rosettacode.org/wiki/FizzBuzz
}
]
For counter 100 [ ; Count to 100
Third?: unless modulo counter 3 [write "Fizz"] ; Display "Fizz" every third count; remember whether we did
Any [
unless modulo counter 5 [write "Buzz"] ; Display "Buzz" every fifth count
third? ; Remember earlier result
write counter ; Display the number if not third or fifth
]
Write " " ; Separate the displayed items
]
Write new-line
I wanna make some cool stuff. I just need some other hackers like me. LOL
Man I C this Perl is so awesome! Thanks for this cool tool!
Typo on your homepage. FYI
Thanks a lot! ;) .. maybe also see my reply above.
I am a n00b so I really dont have fandom. I just learning and sharing. No offense taken.
I write python in shell. Literally. I made a shell function file (pnk.lang) that prints correct python code. The capital letters in the shell function's name, my Tkinter IDE turns into color as you see above. So I let the color (capital letter) abstract away indentation for my brain. The second letter is for category of python code according to me. Again using color to allow me to think. I dont like Python syntax. I looks ugly to me. So I made this tool to make coding colorful, succint and fun for me. It reduces my eye strain among many other personal benefits.
S=self
E=echo
#indentation
#Z="" #0
Y=" " #3
X="$Y$Y " #7
W="$Y$X " #11
V="$Y$W " #15
U="$Y$V " #19
YDfd() {
typeset z="$1"
typeset nn="$2"
typeset cc="$3"
if [[ $z == z ]];
then
$E "$Y def $nn(${S}$cc):"
else
$E "$Y def $nn($cc):"
fi
}
YDdefe() {
typeset fn="$1"
YDfd z $fn ,e=None
}
YDdefe addNew
XIcv $ap Pnk
XFpk $ap 1 both
XFfc zz pw.add $ap
turns into
def addNew(self,e=None):
self.appinstance = Pnk(self,)
self.appinstance.pack(expand=1,fill="both",padx=2,pady=2,)
self.pw.add(self.appinstance)
https://youtu.be/igqAzEMOADI?feature=shared
I created my own code generator for Python in shell.
Yes a DSL. And almost all of Python is hidden inside shell functions. I can make anything Python just writing in shell. I did make some high order functions for Tkinter so I can code faster and I used colors for quicker visual parsing and also removed worrying about indentation by classifying the function using capital letters and a tag for making the color block. Its simply me trying to write code more effectively. Abstracted away the boilerplate in a sense. Its dead simple really. I would love to tell you more.
Yes my point doesnt need to be made. I deleted that.
Check out my DSL I made for Python in Shell. https://github.com/dislux-hapfyl/shimky I checked out all your projects on GitHub. You are a Super Programmer for sure.
No to Python, Go, Lisp and C to begin. In fact at this level you just need to get a feel for process. You need to start where u feel attracted to. You need to learn principles and not languages nor frameworks. Im surprised not one of the replies gives an accurate picture of what it entails to think like a computer. Computation is not an efficient brain like a humans. It was made to work with the hardware we invented long ago. You have to learn the rudimentary and boring repetition the machine HAS to do so it can appear as a real memorable entity. A practical suggestion is to go install Linux From Scratch. When you complete that journey you will have a taste of some principles. Then I also suggest to simply rewrite character for character kilo.c
. Why? So you learn how much a pain and a workout it is to crunch at the keyboard. Learn by doing. Learn by breaking and briking. Go find a game u love with all ur being and reverse engineer it. Who cares what u know at the moment, the goal is the process not the result and besides nothing is ever finished, just get it done. One baby step at a time. Oh and dont ask any more questions. All of those have been asked, its our jobs to find the answer. Please take all this as a simple nudges. None is written with any ill will, trolling nor negativity. Take away the knowledge not the pressumed attitude behind my words. Forget the internet and just dive into it. Another way is to pay some pro to mentor you. Good luck with that since most persons are too busy and are elite. Whatever u want to learn has to be done in the spirit of neglect. You cant care too much about computation. It is just a process for making fragmented business. No one NEEDS software nor money. We all agree to play these nonsensical games. Have fun and be grateful for the process itself. Good journey to you friend! Its a weird one. Ive been at it for 35 years and Im still a newbie.
PS The internet is filled with info. Its your job to determine the knowledge and not the judgement on the worth of the person who posted it. Too much drama and toxicity because everyone at the top of the food chain is pushing that vibe. Everyone everywhere is complaining about our violent ways, how we write to each other online and how we are all being subhuman. Peace to all!
#allerrorsmatter #cod-ape