Abuse filter log

Abuse Filter navigation (Home | Recent filter changes | Examine past edits | Abuse log)
Jump to navigation Jump to search
Details for log entry 7,536

18:45, 24 October 2020: Qh4 (talk | contribs) triggered filter 9, performing the action "edit" on +-. Actions taken: Warn; Filter description: require new users to introduce themselves (examine)

Changes made in edit

 
elif cmd == '-': acc -= 1
 
elif cmd == '-': acc -= 1
 
else: print('Error!'); break
 
else: print('Error!'); break
  +
  +
=== C ===
  +
#include <stdio.h>
  +
  +
int main() {
  +
int ch, ax = 0;
  +
while((ch = getchar()) {
  +
ax += (ch == '+') - (ch == '-');
  +
}
  +
}
  +
   
 
= +-= =
 
= +-= =

Action parameters

VariableValue
Edit count of the user (user_editcount)
0
Name of the user account (user_name)
'Qh4'
Age of the user account (user_age)
405
Page ID (page_id)
11153
Page namespace (page_namespace)
0
Page title (without namespace) (page_title)
'+-'
Full page title (page_prefixedtitle)
'+-'
Action (action)
'edit'
Edit summary/reason (summary)
'Added super useful and sexy C interpreter'
Old content model (old_content_model)
'wikitext'
New content model (new_content_model)
'wikitext'
Old page wikitext, before the edit (old_wikitext)
''''+-''', or '''ID''', is a [[Joke language list|joke language]] created by [[User:Anonymous]] in 2017. == Commands == +- consists of a single accumulator, along with 2 single-character commands to change it. Using other characters besides these will result in the string <code>Error!</code> being alerted to console or an alert box. Note that this does not stop the program from continuing its execution. {| class="wikitable" |- ! Command !! Action |- | <code>+</code> || Increments the accumulator. |- | <code>-</code> || Decrements the accumulator. |} == Examples == Sets the accumulator to 1: + to 5: +++++ to 64: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ == Interpreters == === Java === public static String id(String p){ int a = 0; for(int i = 0; i < p.length(); ++i){ switch(p.charAt(i)){ case '+': ++a; break; case '-': --a; break; default: System.err.println("Error!"); } } return <nowiki>'</nowiki>'; } } === JavaScript === function id(p){ var a = 0; for(var c of p){ switch(c){ case '+': a++; break; case '-': a--; break; default: alert('Error!'); } } return <nowiki>'</nowiki>'; } === Python 3 === def id(): acc = 0 while True: prg = input('\n+-> ') for cmd in prg: if cmd == '+': acc += 1 elif cmd == '-': acc -= 1 else: print('Error!'); break = +-= = '''+-=''', or '''IDPL''', is the same as +-, except the <code>=</code> operator is added for output. == Commands == {| class="wikitable" |- ! Command !! Action |- | <code>+</code> || Increments the accumulator. |- | <code>-</code> || Decrements the accumulator. |- | <code>=</code> || Prints the accumulator along with a newline. |} == Examples == Prints 42: ++++++++++++++++++++++++++++++++++++++++++= Counts to 10 (separated by newlines): +=+=+=+=+=+=+=+=+=+= Prints the ASCII values for [[Hello World]] (word wrapped): ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++ ++++++++++++++++++++++=+++++++==+++=-------------------------------------------- -----------------------=------------=+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++=--------=+++=------=--------=------ -------------------------------------------------------------=------------------ -----= == Interpreters == === Java === public static String idpl(String p){ int a = 0; for(int i = 0; i < p.length(); ++i){ switch(p.charAt(i)){ case '+': ++a; break; case '-': --a; break; case '=': System.out.println(a); break; default: System.err.println("Error!"); } } } === JavaScript === function idpl(p){ var a = 0, o = ''; for(var c of p){ switch(c){ case '+': a++; break; case '-': a--; break; case '=': o += '\n' + a; break; default: alert('Error!'); } } return o.substring(1); } === Python 3 === def idpl(): acc = 0 while True: prg = input('\n+-=> ') for cmd in prg: if cmd == '+': acc += 1 elif cmd == '-': acc -= 1 elif cmd == '=': print(acc) else: print('Error!'); break == Usability == +-= may be usable for very specific [https://codegolf.stackexchange.com/questions/tagged/kolmogorov-complexity Kolmogorov-complexity challenges], if the task is to print numbers on each line. = +-=*/!&# = '''+-=*/!&#''' is a language that expands +- more with 6 more commands, adding the feature to print as an ASCII character among others. == Commands == {| class=wikitable ! Command !! Function |- | <code>+</code> || Increments the accumulator. |- | <code>-</code> || Decrements the accumulator. |- | <code>=</code> || Prints the accumulator's value. |- | <code>*</code> || Prints the accumulator as an ASCII character. |- | <code>/</code> || Sets the accumulator to 0. |- | <code>!</code> || Increments the accumulator by 10. |- | <code>&</code> || Decrements the accumulator by 10. |- | <code>#</code> || Prints a newline. |} Note that <code>=</code> no longer adds a newline, and unknown commands are treated as NOPs instead of causing an error. == Examples == === [[FizzBuzz]] === !!!!!-*#+*#!!*!!!+++++*!!---**#&&&&&&&*#!++++*!!!!!+*+++++**#&&&&&--*!!!+++++*!! ---**#&&&&&&&+++*#+*#!++++*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++**#/!!!!!-**# !!+*!!!+++++*!!---**#/!!!!!-*++*#--*+++*#!!--*!!!+++++*!!---**&&&&&&++++*!!!!!+* +++++**#/!!!!!-*+++++*#-----*!----*#!+++++*!!!+++++*!!---**#/!!!!!-*!--*#!-*!!!! !+*+++++**#&&&&&--*!!!+++++*!!---**#/!!!!!**#*+*#!!-*!!!+++++*!!---**#&&&&&&++++ *!!!!!+*+++++**#/!!!!!*++++*#!!----*!!!+++++*!!---**#/!!!!!*!----*#&++++*!---*#! +++*!!!+++++*!!---**&&&&&&++++*!!!!!+*+++++**#/!!!!!+*--*#++*-*#!!*!!!+++++*!!-- -**#/!!!!!+*+*#!++++*!!!!!+*+++++**#&&&&&--*!!!+++++*!!---**#/!!!!!+*++++*#----* +++++*#!++++*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++**#&&&&&&&*---*#!!+*!!!++++ +*!!---**#&&&&&&&*-*#+**#!!--*!!!+++++*!!---**&&&&&&++++*!!!!!+*+++++**#&&&&&&&* ++*#--*+++*#!+++++*!!!+++++*!!---**#&&&&&&&*+++++*#!-*!!!!!+*+++++**#&&&&&--*!!! +++++*!!---**#&&&&&&&+*---*#+++*--*#!!-*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++ **#&&&&&&&+*+*#!!----*!!!+++++*!!---**#&&&&&&&+*+++*#---*++++*#!+++*!!!+++++*!!- --**&&&&&&++++*!!!!!+*+++++**#&&&&&&&++*-----*#+++++*----*#!!*!!!+++++*!!---**#& &&&&&&++*--*#!++++*!!!!!+*+++++**#&&&&&--*!!!+++++*!!---**#&&&&&&&++*+*#-*++*#!+ +++*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++**#&&&&&&&+++*&++++*#!!+*!!!+++++*!! ---**#&&&&&&&+++*----*#++++*---*#!!--*!!!+++++*!!---**&&&&&&++++*!!!!!+*+++++**# &&&&&&&+++*-*#+**#!+++++*!!!+++++*!!---**#&&&&&&&+++*++*#!-*!!!!!+*+++++**#&&&&& --*!!!+++++*!!---**#&&&&&&&++++*&++++*#!----*-----*#!!-*!!!+++++*!!---**#&&&&&&+ +++*!!!!!+*+++++**#&&&&&&&++++*--*#!!----*!!!+++++*!!---**#&&&&&&&++++**#*+*#!++ +*!!!+++++*!!---**&&&&&&++++*!!!!!+*+++++**#/!!!!!!---*&++*#!--*&+++*#!!*!!!++++ +*!!---**#/!!!!!!---*-----*#!++++*!!!!!+*+++++**#&&&&&--*!!!+++++*!!---**#/!!!!! !---*--*#++*-*#!++++*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++** === [[Hello World]] === !!!!!!!++*!!!-*!---**+++*/!!!++*!!!!!+++++*!!++++*+++*&++++*&++*/!!!+++* == Interpreters == === Java === public static String idplidpl(String p){ int a = 0; for(int i = 0; i < code.length(); ++i){ switch(p.charAt(i)){ case '+': ++a; break; case '-': --a; break; case '=': System.out.print(a); break; case '*': System.out.print((char)a); break; case '/': a = 0; break; case '!': a += 10; break; case '&': a -= 10; break; case '#': System.out.println(); break; } } } === JavaScript === function idplidpl(p){ var a = 0, o = ''; for(var c of p){ switch(c){ case '+': a++; break; case '-': a--; break; case '=': o += a; break; case '*': o += String.fromCharCode(a); break; case '/': a = 0; break; case '!': a += 10; break; case '&': a -= 10; break; case '#': o += '\n'; break; } } return o; } === ProcessingJS === var interpreter = function(code){ var o = ""; var a = 0; for(var i = 0; i < code.length; i++){ switch(code.charAt(i)){ case "+": acc++; break; case "-": acc--; break; case "=": console.log(acc); break; case "*": console.log(String.fromCharCode(acc)); break; case "/": acc = 0; break; case "!": acc += 10; break; case "&": acc -= 10; break; case "#": console.log("\n"); } } println(o); }; === Python 3 === def pmeaseap(): acc = 0 while True: prg = input('\n+-=*/!&#> ') for cmd in prg: if cmd == '+': acc += 1 elif cmd == '-': acc -= 1 elif cmd == '=': print(acc, end="") elif cmd == '*': print(chr(acc), end="") elif cmd == '/': acc = 0 elif cmd == '!': acc += 10 elif cmd == '&': acc -= 10 elif cmd == '#': print() = +-=*/@%#(x)< = '''+-=*/@%#(x)<''' is a language that expands +-=*/!&# with a few more commands. This makes it a lot more usable == Commands == <code>!</code> and <code>&</code> have been removed. {| class=wikitable ! Command !! Function |- | <code>+</code> || Increments the accumulator. |- | <code>-</code> || Decrements the accumulator. |- | <code>=</code> || Prints the accumulator's value. |- | <code>*</code> || Prints the accumulator as an ASCII character. |- | <code>@</code> || Inputs the next integer to the accumulator. |- | <code>%</code> || Inputs the next character in ASCII to the accumulator. |- | <code>/</code> || Sets the accumulator to 0. |- | <code>#</code> || Prints a newline. |- | <code>(x)</code> || Does the previous command x amount of times. This makes <code>!</code> and <code>&</code> redundant, thus being removed. You can also keep the x to repeat the command the number of times in the accumalator. |- | <code>&lt;</code> || Moves the pointer one command back. a command with a <code>(x)</code> after it will be counted as one command (e.g.<code>+(5)&lt;</code> will constantly increment the accumulator by 5). You can also use <code>&lt;(x)<</code> to go back multiple commands. |} ==Examples== ===[[Cat Program]]=== this is a simple [[Cat Program]] for one character %* ===[[Truth Machine]]=== First, it takes in an integer input and prints it then it will move the pointer back the number in the accumulator, meaning, if the accumulator is 0 then the program will go on without doing anything and terminate, but if the accumulator is 1 then the pointer will go back one to the command <code>=</code> which will output the accumulator, which is one, and repeat. @=<(x) ==Interpreters== WIP [[Category:2017]] [[Category:Unusable for programming]] [[Category:Implemented]] [[Category:Joke languages]]'
New page wikitext, after the edit (new_wikitext)
''''+-''', or '''ID''', is a [[Joke language list|joke language]] created by [[User:Anonymous]] in 2017. == Commands == +- consists of a single accumulator, along with 2 single-character commands to change it. Using other characters besides these will result in the string <code>Error!</code> being alerted to console or an alert box. Note that this does not stop the program from continuing its execution. {| class="wikitable" |- ! Command !! Action |- | <code>+</code> || Increments the accumulator. |- | <code>-</code> || Decrements the accumulator. |} == Examples == Sets the accumulator to 1: + to 5: +++++ to 64: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ == Interpreters == === Java === public static String id(String p){ int a = 0; for(int i = 0; i < p.length(); ++i){ switch(p.charAt(i)){ case '+': ++a; break; case '-': --a; break; default: System.err.println("Error!"); } } return <nowiki>'</nowiki>'; } } === JavaScript === function id(p){ var a = 0; for(var c of p){ switch(c){ case '+': a++; break; case '-': a--; break; default: alert('Error!'); } } return <nowiki>'</nowiki>'; } === Python 3 === def id(): acc = 0 while True: prg = input('\n+-> ') for cmd in prg: if cmd == '+': acc += 1 elif cmd == '-': acc -= 1 else: print('Error!'); break === C === #include <stdio.h> int main() { int ch, ax = 0; while((ch = getchar()) { ax += (ch == '+') - (ch == '-'); } } = +-= = '''+-=''', or '''IDPL''', is the same as +-, except the <code>=</code> operator is added for output. == Commands == {| class="wikitable" |- ! Command !! Action |- | <code>+</code> || Increments the accumulator. |- | <code>-</code> || Decrements the accumulator. |- | <code>=</code> || Prints the accumulator along with a newline. |} == Examples == Prints 42: ++++++++++++++++++++++++++++++++++++++++++= Counts to 10 (separated by newlines): +=+=+=+=+=+=+=+=+=+= Prints the ASCII values for [[Hello World]] (word wrapped): ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++ ++++++++++++++++++++++=+++++++==+++=-------------------------------------------- -----------------------=------------=+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++=--------=+++=------=--------=------ -------------------------------------------------------------=------------------ -----= == Interpreters == === Java === public static String idpl(String p){ int a = 0; for(int i = 0; i < p.length(); ++i){ switch(p.charAt(i)){ case '+': ++a; break; case '-': --a; break; case '=': System.out.println(a); break; default: System.err.println("Error!"); } } } === JavaScript === function idpl(p){ var a = 0, o = ''; for(var c of p){ switch(c){ case '+': a++; break; case '-': a--; break; case '=': o += '\n' + a; break; default: alert('Error!'); } } return o.substring(1); } === Python 3 === def idpl(): acc = 0 while True: prg = input('\n+-=> ') for cmd in prg: if cmd == '+': acc += 1 elif cmd == '-': acc -= 1 elif cmd == '=': print(acc) else: print('Error!'); break == Usability == +-= may be usable for very specific [https://codegolf.stackexchange.com/questions/tagged/kolmogorov-complexity Kolmogorov-complexity challenges], if the task is to print numbers on each line. = +-=*/!&# = '''+-=*/!&#''' is a language that expands +- more with 6 more commands, adding the feature to print as an ASCII character among others. == Commands == {| class=wikitable ! Command !! Function |- | <code>+</code> || Increments the accumulator. |- | <code>-</code> || Decrements the accumulator. |- | <code>=</code> || Prints the accumulator's value. |- | <code>*</code> || Prints the accumulator as an ASCII character. |- | <code>/</code> || Sets the accumulator to 0. |- | <code>!</code> || Increments the accumulator by 10. |- | <code>&</code> || Decrements the accumulator by 10. |- | <code>#</code> || Prints a newline. |} Note that <code>=</code> no longer adds a newline, and unknown commands are treated as NOPs instead of causing an error. == Examples == === [[FizzBuzz]] === !!!!!-*#+*#!!*!!!+++++*!!---**#&&&&&&&*#!++++*!!!!!+*+++++**#&&&&&--*!!!+++++*!! ---**#&&&&&&&+++*#+*#!++++*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++**#/!!!!!-**# !!+*!!!+++++*!!---**#/!!!!!-*++*#--*+++*#!!--*!!!+++++*!!---**&&&&&&++++*!!!!!+* +++++**#/!!!!!-*+++++*#-----*!----*#!+++++*!!!+++++*!!---**#/!!!!!-*!--*#!-*!!!! !+*+++++**#&&&&&--*!!!+++++*!!---**#/!!!!!**#*+*#!!-*!!!+++++*!!---**#&&&&&&++++ *!!!!!+*+++++**#/!!!!!*++++*#!!----*!!!+++++*!!---**#/!!!!!*!----*#&++++*!---*#! +++*!!!+++++*!!---**&&&&&&++++*!!!!!+*+++++**#/!!!!!+*--*#++*-*#!!*!!!+++++*!!-- -**#/!!!!!+*+*#!++++*!!!!!+*+++++**#&&&&&--*!!!+++++*!!---**#/!!!!!+*++++*#----* +++++*#!++++*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++**#&&&&&&&*---*#!!+*!!!++++ +*!!---**#&&&&&&&*-*#+**#!!--*!!!+++++*!!---**&&&&&&++++*!!!!!+*+++++**#&&&&&&&* ++*#--*+++*#!+++++*!!!+++++*!!---**#&&&&&&&*+++++*#!-*!!!!!+*+++++**#&&&&&--*!!! +++++*!!---**#&&&&&&&+*---*#+++*--*#!!-*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++ **#&&&&&&&+*+*#!!----*!!!+++++*!!---**#&&&&&&&+*+++*#---*++++*#!+++*!!!+++++*!!- --**&&&&&&++++*!!!!!+*+++++**#&&&&&&&++*-----*#+++++*----*#!!*!!!+++++*!!---**#& &&&&&&++*--*#!++++*!!!!!+*+++++**#&&&&&--*!!!+++++*!!---**#&&&&&&&++*+*#-*++*#!+ +++*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++**#&&&&&&&+++*&++++*#!!+*!!!+++++*!! ---**#&&&&&&&+++*----*#++++*---*#!!--*!!!+++++*!!---**&&&&&&++++*!!!!!+*+++++**# &&&&&&&+++*-*#+**#!+++++*!!!+++++*!!---**#&&&&&&&+++*++*#!-*!!!!!+*+++++**#&&&&& --*!!!+++++*!!---**#&&&&&&&++++*&++++*#!----*-----*#!!-*!!!+++++*!!---**#&&&&&&+ +++*!!!!!+*+++++**#&&&&&&&++++*--*#!!----*!!!+++++*!!---**#&&&&&&&++++**#*+*#!++ +*!!!+++++*!!---**&&&&&&++++*!!!!!+*+++++**#/!!!!!!---*&++*#!--*&+++*#!!*!!!++++ +*!!---**#/!!!!!!---*-----*#!++++*!!!!!+*+++++**#&&&&&--*!!!+++++*!!---**#/!!!!! !---*--*#++*-*#!++++*!!!+++++*!!---**#&&&&&&++++*!!!!!+*+++++** === [[Hello World]] === !!!!!!!++*!!!-*!---**+++*/!!!++*!!!!!+++++*!!++++*+++*&++++*&++*/!!!+++* == Interpreters == === Java === public static String idplidpl(String p){ int a = 0; for(int i = 0; i < code.length(); ++i){ switch(p.charAt(i)){ case '+': ++a; break; case '-': --a; break; case '=': System.out.print(a); break; case '*': System.out.print((char)a); break; case '/': a = 0; break; case '!': a += 10; break; case '&': a -= 10; break; case '#': System.out.println(); break; } } } === JavaScript === function idplidpl(p){ var a = 0, o = ''; for(var c of p){ switch(c){ case '+': a++; break; case '-': a--; break; case '=': o += a; break; case '*': o += String.fromCharCode(a); break; case '/': a = 0; break; case '!': a += 10; break; case '&': a -= 10; break; case '#': o += '\n'; break; } } return o; } === ProcessingJS === var interpreter = function(code){ var o = ""; var a = 0; for(var i = 0; i < code.length; i++){ switch(code.charAt(i)){ case "+": acc++; break; case "-": acc--; break; case "=": console.log(acc); break; case "*": console.log(String.fromCharCode(acc)); break; case "/": acc = 0; break; case "!": acc += 10; break; case "&": acc -= 10; break; case "#": console.log("\n"); } } println(o); }; === Python 3 === def pmeaseap(): acc = 0 while True: prg = input('\n+-=*/!&#> ') for cmd in prg: if cmd == '+': acc += 1 elif cmd == '-': acc -= 1 elif cmd == '=': print(acc, end="") elif cmd == '*': print(chr(acc), end="") elif cmd == '/': acc = 0 elif cmd == '!': acc += 10 elif cmd == '&': acc -= 10 elif cmd == '#': print() = +-=*/@%#(x)< = '''+-=*/@%#(x)<''' is a language that expands +-=*/!&# with a few more commands. This makes it a lot more usable == Commands == <code>!</code> and <code>&</code> have been removed. {| class=wikitable ! Command !! Function |- | <code>+</code> || Increments the accumulator. |- | <code>-</code> || Decrements the accumulator. |- | <code>=</code> || Prints the accumulator's value. |- | <code>*</code> || Prints the accumulator as an ASCII character. |- | <code>@</code> || Inputs the next integer to the accumulator. |- | <code>%</code> || Inputs the next character in ASCII to the accumulator. |- | <code>/</code> || Sets the accumulator to 0. |- | <code>#</code> || Prints a newline. |- | <code>(x)</code> || Does the previous command x amount of times. This makes <code>!</code> and <code>&</code> redundant, thus being removed. You can also keep the x to repeat the command the number of times in the accumalator. |- | <code>&lt;</code> || Moves the pointer one command back. a command with a <code>(x)</code> after it will be counted as one command (e.g.<code>+(5)&lt;</code> will constantly increment the accumulator by 5). You can also use <code>&lt;(x)<</code> to go back multiple commands. |} ==Examples== ===[[Cat Program]]=== this is a simple [[Cat Program]] for one character %* ===[[Truth Machine]]=== First, it takes in an integer input and prints it then it will move the pointer back the number in the accumulator, meaning, if the accumulator is 0 then the program will go on without doing anything and terminate, but if the accumulator is 1 then the pointer will go back one to the command <code>=</code> which will output the accumulator, which is one, and repeat. @=<(x) ==Interpreters== WIP [[Category:2017]] [[Category:Unusable for programming]] [[Category:Implemented]] [[Category:Joke languages]]'
Unified diff of changes made by edit (edit_diff)
'@@ -68,4 +68,15 @@ elif cmd == '-': acc -= 1 else: print('Error!'); break + +=== C === + #include <stdio.h> + + int main() { + int ch, ax = 0; + while((ch = getchar()) { + ax += (ch == '+') - (ch == '-'); + } + } + = +-= = '
New page size (new_size)
10468
Old page size (old_size)
10325
Lines added in edit (added_lines)
[ 0 => '', 1 => '=== C ===', 2 => ' #include <stdio.h>', 3 => ' ', 4 => ' int main() {', 5 => ' int ch, ax = 0;', 6 => ' while((ch = getchar()) {', 7 => ' ax += (ch == '+') - (ch == '-');', 8 => ' }', 9 => ' }', 10 => '' ]
Unix timestamp of change (timestamp)
1603565146