last day (83 days later) » 

13:19
room topic changed to Etch: Room for discussion of Etch (github.com/GingerIndustries/Etch), Ginger Industries' multipurpose general programming language. (no tags)
H
ello
First order of buisness: documentation
because that doesn't exist yet
"Okay dokay"?
third
Oh yeah, second
and I am first for obvious reasons
13:23
@GingerIndustries no lyxal is first always :P
no comment
Oh no pip is taking its time... again
a n y w a y
lemme just create a wiki rq
should just be off
not off of
Yeah, and it shouldn't be okay dokay
13:25
be grammatically correct please.
see above
¯\_(ಠ_ಠ)_/¯
thank you
I installed etchlang but typing etch gives nothing
@ophact did you install the repl
13:26
Yes
are you sure
Precise command typed:
py -m pip install etchlang[repl] --user
hm
try installing the repl by itself
what would that be
pip3 install etchrepl
13:27
ok
done but still not working.
I dunno man
try python3 -m etchrepl
IT WORKS
wow
ayy
I need to figure out how to write the documentation
> No module named etch.__main__; 'etch' is a package and cannot be directly executed
13:30
oop
nvm
@GingerIndustries Yes please I am truly confused as to how to use this language.
@GingerIndustries I was using etch instead of etchrepl
How do you output?
13:30
@ophact :out
Oh okay because I was trying out "a" without any luck
Hello World: :out "Hello, World!";
> >> for a in [0, 1, 2] do :out a
sly: Syntax error at line 1, token=NEWLINE
'NoneType' object is not iterable
How do you do loops properly?
:out ":out"
13:32
sly: Syntax error at line 1, token=NEWLINE
'NoneType' object is not iterable
that's not a quine
I wasn't going for quine
the repl has some... problems
I was going for breaking the language
>> :out ":yes"
sly: Syntax error at line 1, token=NEWLINE
'NoneType' object is not iterable
Looks like you can't have : in strings
(by which I mean you can't type multi-line statements)
@lyxal you can
13:32
not at the start
you forgot to put a semicolon at the end
@lyxal Semicolon required I think
ninja'd
aw dang
I thought I'd broken it
nOT SO FAST
lol capslock
Can you provide an example program that demonstrates all the features of that language?
Not fizzbuzz because it's multiline
and it looks like I'm stuck with the REPL for the moment
13:34
>> :out;:out;

'NoneType'
you can run an Etch file
Interesting
it prints NoneType
type /run <path>
What is /run?
in the REPL
it's a command
13:35
okay...
you can also type etch <path> or in your case python3 -m etchrepl <path>
I love this language
HOW DO YOU DO LOOPS
your example from before didn't work
depends on what loop you want
13:38
never mind I figured it out
I meant I figured forever loops
> Requires: Python <4.0
How do you do the for... in loops
@lyxal Luckily I have python 3.8
13:40
@lyxal what
@GingerIndustries from the pypi page
uH
that is not supposed to happen
one sec
Can you please catch all errors?
It exits (by a Python error) very often
it's very annoying
I do need to fix that
one sec
13:41
Especially that NoneType thing
hold please
> /run test
<etch.utils.ParameterWrapper object at 0x0000027102DADAF0>
1
Where the content of test.etch was:
> if 1 then
:out 1;
done
>> :out 69.420;
69 0.42
that's debugging text
ah shit
As you may have guessed, Etch has problems
thank yall for helping me fix them
can't believe I can't have negative numbers without subtracting from 0
>> :out -4;
cannot unpack non-iterable int object
>> :out 0-4;
-4
Big sad
@GingerIndustries is there a range function?
you should be able to
I'm trying to do fizzbuzz
and of course:
>> :out .1+.2;
0.30000000000000004
@ophact for that you can use do ... count
13:44
Not unique to Etch @lyxal
I know
but it's funny
Etch uses Python, so that's a Python issue
@GingerIndustries What is ...? The statements or the identifier or what?
>> :out 1/0;
division by zero
13:45
do
[statements]
[x] times
big sad
@GingerIndustries thanks
I like dividing by 0
dividing by 0 is fun
>> :out "12" + 12;
can only concatenate str (not "int") to str
Can we have automatic conversion to string?
but really, can we?
13:47
I have other fish to fry bugs to fix, open an issue ig
@lyxal Don't make Etch into JS
repl 0.1.5 is being uploaded to PyPI as I type this message
Will it be on TIO?
done
probably not
TIO is out of date and barely maintained
@GingerIndustries i mean flax also uses python but it doesnt have that issue
13:50
@PyGamer0 ¯\_(ಠ_ಠ)_/¯
@ophact concatenation isn't like JS
@ophact update published
the REPL should tell you that
because flax is well designed /s
@lyxal Oh yeah my mistake
How do you update with pip
@ophact pip install --upgrade etchrepl
13:52
Thank you
Still tells me there's an update even after update
tag feature request pls
anyhow I'm going now
> c=1;
do
if c%15<1 then
:out "FizzBuzz";
c+=1;
100 times
gives me an error
o/
\o is bye right?
@ophact does the REPL crash
NoneType is not iterable
does it crash
13:54
See above
all I did was patch the REPL so if you run a program it catches and prints the error
the NoneType error is a bug with Etch and something I'm going to fix in the next update
Any reason why my unfinished fizzbuzz errors?
nvm figured it out
Yay I figured out how to do FizzBuzz
Now time to figure out how to make a primality tester
Functions...
How do you do functions
define [name] [param1] [param2] [...]
[statements]
done
you can also add indentation if you want
14:00
okay
I have added that string addition feature
@GingerIndustries Lambda syntax?
@BgilMidol none yet
For loop syntax?
> sly: Syntax error at line 13, token=NEWLINE
Traceback (most recent call last):
File "C:\Users\jo08t\AppData\Local\Programs\Python\Python38\lib\runpy.py", line 193, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Users\jo08t\AppData\Local\Programs\Python\Python38\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "C:\Users\jo08t\AppData\Roaming\Python\Python38\site-packages\etchrepl.py", line 96, in <module>
main()
File "C:\Users\jo08t\AppData\Roaming\Python\Python38\site-packages\etchrepl.py", line 81, in main
14:04
yeaaaaaa
Is it not allowed to put two newlines in a row?
I'm also fixing that
@ophact nope
I should fix that
for [var] in [expr] do
[statements]
done
@BgilMidol ^
ok how do i make variables
@BgilMidol [name] = [value], just like Python
@GingerIndustries Is there a online interpreter?
14:08
uh
not yet
you can't use the replit because I'm working on that
hm
@ophact fixed
as well as the NoneType error
anything else?
Also how do I download etch (with pip)
@BgilMidol pip3 install etchlang[repl]
If anybody has suggestions or bugs, please put them here.
4
@GingerIndustries And how do I run it?
can you define function
s
14:17
@BgilMidol etch
I am working on the docs
How do I print stuff
can functions call each other/themselves
i meant to @GingerIndustries
15:21
is there a docs already?
not really
Help with docs would be greatly appreciated!
2
For loop:
Syntax:
    [for loop syntax]
Variations:
15:32
[for, while, forever for loop]
@GingerIndustries suggestions for for loop docs
how about you add that stuff to the wiki
@GingerIndustries how do i add it
trying to figure that out
PR?
fork
@mathcat how do i fork and pr
15:36
there's a fork button
next to star
and watch
forked
fork, edit, and make a pull request
@GingerIndustries Any way to take input?
@GingerIndustries any way to get a prompt?
Like Enter a number:
15:43
that's a param for :get
I think I should use ReadTheDocs for documentation
@GingerIndustries sounds good
@GingerIndustries i need the full syntax for :get
:get; or :get "prompt";
@GingerIndustries i cant pr
I'm moving the docs, one sec
wth
you're more speed than lyxal
16:13
ignore that
those are old
Hello
bye
Wait, What is that room?
etch
this is etch
@mathcat correct
 
3 hours later…
19:45
@GingerIndustries then what is etch?
etch is life
etch is stronger than ms. pat
@Fmbalbuena a general purpose programming language
etch is the creator of the universe
etch was there before joe mama
@GingerIndustries What is correct?

  last day (83 days later) »