Repository navigation
New project ideas #2
Copy link
Copy link
Open
Description
Activity
@shitdecorator (let'sawaitfor stage 3 first and drink vodka!)ShitScript- twitter account
@shitunderhood eslintstyleguide
ShitScript ideas:
informal description
- written in JavaScript
- no statements, only expressions
- no
var(variables are always declared in a global scope by default) - no
return– ShitScript returns the last evaluated expression - no floating point numbers (only integers)
- no unary operators (?)
- no classes, no
array's, noobject's (except forconsoleandwindow)
shitty ideas
- allow using
-,?,!in function names (no-camel-case) - super weird type coercions (or just some non-obvious implicit coercions result in string
'shit') ;->)))===->====,!==->!===(...)->[...]function->shit/fucktry->why-the-fuck-notcatch->fucked-upfinally->dont-fucking-care- say
pleaseto enable lexical scoping - you can't use a couple of numbers (e.g.
4and2) for no reason x / 0=Math.random()if->o-rly?then->ya-rlyelse->no-wayo-rly?-ya-rly-no-wayfor one-liners (without brackets).->->(works only forconsoleandwindow)
an example program:
fuck wat[] { calculate!!![2, 0]))) } shit calculate!!![y, x] please { z = 5))) why-the-fuck-not { o-rly? z % 2 ==== 0 { y / x))) } no-way { x / y))) } } fucked-up[e] { console.lol[e]))) } dont-fucking-care { 0))) } }
P.S.: Not sure about using words
fuckandshiteverywhere (may be considered offensive)To Be Continued...
Reacted by Sergey Rubanov, Denys Dovhan and Terry SahaidakThere are some inconsistencies, lexical and semantic conflicts in your ideas but who gives the fuck anyway!
We can just ignore patch and minor versions and do breaking changes all the time! We should create the Committee, have irregular meetings and release new versions randomly. We can even create pseudorandom spec generator!
Reacted by Vasiliy YorkinLets discuss ShitScript design here https://github.com/shitjs/ShitScript
eslint semicolons indent rule
Example:
function f(a, b) {
;;;;if (a + b > 0) {
;;;;;;;;return a;
;;;;} else {
;;;;;;;;return b;
;;;;}
}image deoptimizer
Metadata
Metadata
Assignees
Labels
No labels
Lets collect good ideas here