231:
JS++ first appeared on
October 8, 2011. The modern implementation was announced at DeveloperWeek 2016 and released on May 31, 2016. The language is designed by Roger Poon and Anton Rapetov.
1078:
868:
1418:
1801:
1811:
1530:
1012:
956:
1791:
1806:
1064:
1031:
904:
1719:
1097:
1046:
975:
1709:
1162:
1467:
872:
1293:
886:
1477:
1781:
166:
1796:
1318:
1724:
1535:
1263:
212:
170:
38:
850:
1512:
1308:
1303:
1268:
339:
511:
Beta version, array and callback types, character literals, integral suffixes, removed ECMAScript ASI
1235:
1117:"JS++ 0.4.2 Release - Upgraded With Modular Design, Dead Code Elimination, and Multiple Code Editors"
1116:
351:
1786:
1489:
1155:
158:
937:
1397:
1278:
1179:
1660:
1624:
1569:
1455:
1450:
216:
208:
42:
34:
30:
1574:
1248:
922:
1387:
189:
186:
25:
8:
1668:
1382:
1148:
220:
46:
1554:
1522:
1484:
1440:
1339:
1283:
367:
363:
123:
63:
1098:"JS++ 0.4.2 released with code editor integrations, modules and dead code elimination"
908:
1745:
1504:
1494:
1344:
1130:
1362:
676:
Generic programming, Dictionary<T>, multi-line strings, .js++ file extension
244:
Since JS++ is a superset of JavaScript, declaring types for variables is optional.
111:
993:
1683:
1645:
1611:
1016:
322:
193:
53:
1673:
1559:
1377:
811:
712:
New string functions, advanced generics, bug fixes, standard library expansion
694:
auto, catch-all clauses, standard library modules for handling time, bug fixes
104:
96:
282:// declares the variable y with an "external type" (JavaScript type)
1775:
1472:
1253:
1082:
100:
1755:
1703:
1428:
1258:
371:
529:
Modules, function overloading, dead code elimination, editor integrations
1596:
637:
311:
204:
116:
91:
300:// declares the variable z with an "internal type" (JS++ type)
264:// declares the variable x with an "internal type" (JS++ type)
1760:
1546:
1445:
1433:
1372:
1323:
1313:
1273:
1220:
1171:
1032:"JS++, the JavaScript superset, is getting rid of out-of-bounds errors"
890:
830:
825:
197:
174:
1750:
1065:"JS++ 0.9.0: Efficient Compile Time Analysis of Out-of-Bounds Errors"
979:
960:
315:
201:
583:
Support for Mac OS X, C-style casts, callback and array conversions
1678:
1601:
1462:
1354:
1243:
1101:
1050:
941:
343:
658:
All ECMAScript 3 features via Array<T> and
Standard Library
1693:
1650:
1640:
1367:
851:"JavaScript++: New, Powerful Language for Better Web Development"
749:
383:
1564:
1298:
1207:
1197:
1192:
1187:
1047:"JS++ programming language looks to solve out-of-bounds errors"
753:
1079:"JavaScript superset JS++ adds dead code elimination and more"
1729:
1584:
1405:
1225:
1140:
905:"Javascript Conference - DeveloperWeek 2016 - February 12-18"
854:
640:, Interfaces, Abstract Classes, Virtual Methods, Auto-boxing
347:
162:
137:
1688:
1591:
1579:
1288:
1013:"Onux JS++, an answer to JavaScript 'brittle' type safety?"
1619:
382:
JS++ can be integrated with third-party build tools like
810:
Final (immutable) variables and default to 64-bit for
938:"Onux seeks to fix JavaScript's lack of type safety"
774:
Efficient compile time out-of-bounds error analysis
362:
JS++ integrates with various code editors including
1095:
1044:
1010:
1773:
976:"jQuery 3.0 Released and Other JavaScript News"
973:
957:"New compiler tackles JavaScript's weak typing"
1156:
1114:
1163:
1149:
1029:
954:
935:
1131:"GitHub - IngwiePhoenix/jspp-webpack-poc"
1802:Statically typed programming languages
1774:
1096:Christina Cardoza (October 19, 2016).
1045:Christina Cardoza (January 16, 2019).
748:Faster compile times, stacks, queues,
1812:Programming languages created in 2011
1144:
1133:. 7 December 2018 – via GitHub.
357:
328:
321:JS++ is able to efficiently analyze
1531:Comparison of JavaScript frameworks
1011:Adrian Bridgwater (June 13, 2016).
756:, generic default constraint rules
338:The JS++ compiler is available for
239:
13:
907:. 13 February 2016. Archived from
869:"C++ et Javascript = Javascript++"
389:
14:
1823:
1792:Class-based programming languages
1115:Geneva Clark (October 20, 2016).
889:. 18 October 2011. Archived from
871:. 12 October 2011. Archived from
853:. 17 October 2011. Archived from
1807:High-level programming languages
974:Catalin Cimpanu (June 9, 2016).
1123:
1108:
1089:
1071:
1057:
1038:
1030:Fabio Díaz (January 23, 2019).
1023:
1004:
421:Alpha version, initial release
1170:
986:
967:
948:
929:
915:
897:
879:
861:
843:
377:
1:
836:
1536:List of JavaScript libraries
923:"JS++ Goes Into Public Beta"
7:
1490:Visual Studio Team Services
955:Paul Krill (June 6, 2016).
936:Alex Handy (June 1, 2016).
819:
333:
305:
10:
1828:
1513:List of ECMAScript engines
738:24 November 2018
573:25 December 2016
555:17 November 2016
226:
1738:
1702:
1659:
1633:
1610:
1544:
1521:
1503:
1414:
1396:
1353:
1332:
1234:
1206:
1178:
800:18 October 2019
764:11 January 2019
648:27 October 2017
537:24 October 2016
519:18 October 2016
465:29 January 2012
447:25 October 2011
429:10 October 2011
350:. The compiler generates
234:
157:
152:
132:
122:
110:
90:
72:
62:
58:Roger Poon, Anton Rapetov
52:
24:
483:15 August 2012
411:8 October 2011
246:
16:Web programming language
1378:Microsoft Edge DevTools
1279:Google Closure Compiler
684:27 March 2018
666:15 March 2018
609:26 March 2017
591:13 March 2017
1570:Cascading Style Sheets
994:"The JS++ Type System"
627:27 July 2017
223:programming features.
78:; 12 years ago
1782:Programming languages
1575:Document Object Model
1478:Visual Studio Express
887:"Index of /downloads"
782:1 July 2019
720:2 June 2018
702:23 May 2018
565:Source map debugging
501:31 May 2016
1797:Functional languages
1388:Safari Web Inspector
911:on 13 February 2016.
323:out-of-bounds errors
190:programming language
1669:Active Server Pages
1085:. October 19, 2016.
1067:. January 11, 2019.
893:on 18 October 2011.
875:on 12 October 2011.
857:on 17 October 2011.
124:Filename extensions
76:8 October 2011
73:First appeared
21:
1485:Visual Studio Code
1340:JavaScript library
1284:Google Web Toolkit
364:Visual Studio Code
358:Editor integration
128:.jspp, .js++, .jpp
19:
1769:
1768:
1746:Douglas Crockford
1368:Firefox Inspector
1345:JavaScript syntax
817:
816:
352:JavaScript output
329:Development tools
325:at compile time.
180:
179:
92:Typing discipline
1819:
1713:
1612:Package managers
1422:
1165:
1158:
1151:
1142:
1141:
1135:
1134:
1127:
1121:
1120:
1112:
1106:
1105:
1093:
1087:
1086:
1075:
1069:
1068:
1061:
1055:
1054:
1042:
1036:
1035:
1027:
1021:
1020:
1008:
1002:
1001:
990:
984:
983:
971:
965:
964:
952:
946:
945:
933:
927:
926:
919:
913:
912:
901:
895:
894:
883:
877:
876:
865:
859:
858:
847:
807:
805:
789:
787:
771:
769:
745:
743:
727:
725:
709:
707:
691:
689:
673:
671:
655:
653:
634:
632:
619:'foreach' loops
616:
614:
598:
596:
580:
578:
562:
560:
544:
542:
526:
524:
508:
506:
490:
488:
472:
470:
454:
452:
436:
434:
418:
416:
394:
393:
310:JS++ features a
301:
298:
295:
292:
289:
286:
283:
280:
277:
274:
271:
268:
265:
262:
259:
256:
253:
250:
240:Type annotations
148:
145:
143:
141:
139:
86:
84:
79:
54:Designed by
22:
18:
1827:
1826:
1822:
1821:
1820:
1818:
1817:
1816:
1787:Web programming
1772:
1771:
1770:
1765:
1734:
1707:
1698:
1655:
1634:Module bundlers
1629:
1606:
1540:
1517:
1499:
1416:
1410:
1392:
1363:Chrome DevTools
1349:
1328:
1230:
1202:
1174:
1169:
1139:
1138:
1129:
1128:
1124:
1113:
1109:
1094:
1090:
1077:
1076:
1072:
1063:
1062:
1058:
1043:
1039:
1028:
1024:
1017:Computer Weekly
1009:
1005:
992:
991:
987:
972:
968:
953:
949:
934:
930:
925:. May 31, 2016.
921:
920:
916:
903:
902:
898:
885:
884:
880:
867:
866:
862:
849:
848:
844:
839:
822:
803:
801:
785:
783:
767:
765:
741:
739:
723:
721:
705:
703:
687:
685:
669:
667:
651:
649:
630:
628:
612:
610:
594:
592:
576:
574:
558:
556:
540:
538:
522:
520:
504:
502:
486:
484:
468:
466:
450:
448:
432:
430:
414:
412:
397:Version number
392:
390:Release history
380:
360:
336:
331:
308:
303:
302:
299:
296:
293:
290:
287:
284:
281:
278:
275:
272:
269:
266:
263:
260:
257:
254:
251:
248:
242:
237:
229:
213:object-oriented
194:web development
136:
82:
80:
77:
39:object-oriented
17:
12:
11:
5:
1825:
1815:
1814:
1809:
1804:
1799:
1794:
1789:
1784:
1767:
1766:
1764:
1763:
1758:
1753:
1748:
1742:
1740:
1736:
1735:
1733:
1732:
1727:
1722:
1716:
1714:
1700:
1699:
1697:
1696:
1691:
1686:
1681:
1676:
1671:
1665:
1663:
1657:
1656:
1654:
1653:
1648:
1643:
1637:
1635:
1631:
1630:
1628:
1627:
1622:
1616:
1614:
1608:
1607:
1605:
1604:
1599:
1594:
1589:
1588:
1587:
1577:
1572:
1567:
1562:
1560:AssemblyScript
1557:
1551:
1549:
1542:
1541:
1539:
1538:
1533:
1527:
1525:
1519:
1518:
1516:
1515:
1509:
1507:
1501:
1500:
1498:
1497:
1492:
1487:
1482:
1481:
1480:
1470:
1465:
1460:
1459:
1458:
1453:
1443:
1438:
1437:
1436:
1425:
1423:
1412:
1411:
1409:
1408:
1402:
1400:
1398:Doc generators
1394:
1393:
1391:
1390:
1385:
1383:Opera DevTools
1380:
1375:
1370:
1365:
1359:
1357:
1351:
1350:
1348:
1347:
1342:
1336:
1334:
1330:
1329:
1327:
1326:
1321:
1316:
1311:
1306:
1301:
1296:
1291:
1286:
1281:
1276:
1271:
1266:
1261:
1256:
1251:
1246:
1240:
1238:
1232:
1231:
1229:
1228:
1223:
1218:
1212:
1210:
1204:
1203:
1201:
1200:
1195:
1190:
1184:
1182:
1176:
1175:
1168:
1167:
1160:
1153:
1145:
1137:
1136:
1122:
1107:
1088:
1070:
1056:
1037:
1034:. Akuaroworld.
1022:
1003:
985:
966:
947:
928:
914:
896:
878:
860:
841:
840:
838:
835:
834:
833:
828:
821:
818:
815:
814:
812:macOS Catalina
808:
798:
794:
793:
790:
780:
776:
775:
772:
762:
758:
757:
746:
736:
732:
731:
728:
718:
714:
713:
710:
700:
696:
695:
692:
682:
678:
677:
674:
664:
660:
659:
656:
646:
642:
641:
635:
625:
621:
620:
617:
607:
603:
602:
599:
589:
585:
584:
581:
571:
567:
566:
563:
553:
549:
548:
545:
535:
531:
530:
527:
517:
513:
512:
509:
499:
495:
494:
493:Alpha version
491:
481:
477:
476:
475:Alpha version
473:
463:
459:
458:
457:Alpha version
455:
445:
441:
440:
439:Alpha version
437:
427:
423:
422:
419:
409:
405:
404:
401:
398:
391:
388:
379:
376:
359:
356:
335:
332:
330:
327:
307:
304:
247:
241:
238:
236:
233:
228:
225:
207:. It includes
178:
177:
155:
154:
150:
149:
134:
130:
129:
126:
120:
119:
114:
108:
107:
94:
88:
87:
74:
70:
69:
66:
60:
59:
56:
50:
49:
28:
15:
9:
6:
4:
3:
2:
1824:
1813:
1810:
1808:
1805:
1803:
1800:
1798:
1795:
1793:
1790:
1788:
1785:
1783:
1780:
1779:
1777:
1762:
1759:
1757:
1754:
1752:
1749:
1747:
1744:
1743:
1741:
1737:
1731:
1728:
1726:
1723:
1721:
1718:
1717:
1715:
1711:
1705:
1701:
1695:
1692:
1690:
1687:
1685:
1682:
1680:
1677:
1675:
1672:
1670:
1667:
1666:
1664:
1662:
1658:
1652:
1649:
1647:
1644:
1642:
1639:
1638:
1636:
1632:
1626:
1623:
1621:
1618:
1617:
1615:
1613:
1609:
1603:
1600:
1598:
1595:
1593:
1590:
1586:
1583:
1582:
1581:
1578:
1576:
1573:
1571:
1568:
1566:
1563:
1561:
1558:
1556:
1553:
1552:
1550:
1548:
1543:
1537:
1534:
1532:
1529:
1528:
1526:
1524:
1520:
1514:
1511:
1510:
1508:
1506:
1502:
1496:
1493:
1491:
1488:
1486:
1483:
1479:
1476:
1475:
1474:
1473:Visual Studio
1471:
1469:
1466:
1464:
1461:
1457:
1454:
1452:
1449:
1448:
1447:
1444:
1442:
1439:
1435:
1432:
1431:
1430:
1427:
1426:
1424:
1420:
1413:
1407:
1404:
1403:
1401:
1399:
1395:
1389:
1386:
1384:
1381:
1379:
1376:
1374:
1371:
1369:
1366:
1364:
1361:
1360:
1358:
1356:
1352:
1346:
1343:
1341:
1338:
1337:
1335:
1331:
1325:
1322:
1320:
1317:
1315:
1312:
1310:
1307:
1305:
1302:
1300:
1297:
1295:
1292:
1290:
1287:
1285:
1282:
1280:
1277:
1275:
1272:
1270:
1267:
1265:
1262:
1260:
1257:
1255:
1254:ClojureScript
1252:
1250:
1247:
1245:
1242:
1241:
1239:
1237:
1233:
1227:
1224:
1222:
1219:
1217:
1214:
1213:
1211:
1209:
1205:
1199:
1196:
1194:
1191:
1189:
1186:
1185:
1183:
1181:
1180:Code analysis
1177:
1173:
1166:
1161:
1159:
1154:
1152:
1147:
1146:
1143:
1132:
1126:
1118:
1111:
1103:
1099:
1092:
1084:
1083:Computerworld
1080:
1074:
1066:
1060:
1052:
1048:
1041:
1033:
1026:
1018:
1014:
1007:
999:
995:
989:
981:
977:
970:
962:
958:
951:
943:
939:
932:
924:
918:
910:
906:
900:
892:
888:
882:
874:
870:
864:
856:
852:
846:
842:
832:
829:
827:
824:
823:
813:
809:
799:
796:
795:
791:
781:
778:
777:
773:
763:
760:
759:
755:
751:
747:
737:
734:
733:
729:
719:
716:
715:
711:
701:
698:
697:
693:
683:
680:
679:
675:
665:
662:
661:
657:
647:
644:
643:
639:
636:
626:
623:
622:
618:
608:
605:
604:
600:
590:
587:
586:
582:
572:
569:
568:
564:
554:
551:
550:
546:
536:
533:
532:
528:
518:
515:
514:
510:
500:
497:
496:
492:
482:
479:
478:
474:
464:
461:
460:
456:
446:
443:
442:
438:
428:
425:
424:
420:
410:
407:
406:
402:
400:Release date
399:
396:
395:
387:
385:
375:
373:
369:
365:
355:
353:
349:
345:
341:
326:
324:
319:
317:
313:
245:
232:
224:
222:
218:
214:
210:
206:
203:
199:
196:that extends
195:
191:
188:
184:
176:
172:
168:
164:
160:
156:
153:Influenced by
151:
147:
135:
131:
127:
125:
121:
118:
115:
113:
109:
106:
102:
98:
95:
93:
89:
75:
71:
67:
65:
61:
57:
55:
51:
48:
44:
40:
36:
32:
29:
27:
23:
1756:Brendan Eich
1704:Unit testing
1547:technologies
1259:CoffeeScript
1215:
1125:
1110:
1091:
1073:
1059:
1040:
1025:
1006:
998:www.onux.com
997:
988:
969:
950:
931:
917:
909:the original
899:
891:the original
881:
873:the original
863:
855:the original
845:
381:
372:Sublime Text
361:
337:
320:
309:
243:
230:
182:
181:
1706:frameworks
1661:Server-side
1597:WebAssembly
1456:Light Table
1236:Transpilers
638:BSD License
378:Build tools
312:type system
205:type system
187:proprietary
117:BSD License
1776:Categories
1761:John Resig
1523:Frameworks
1446:CodeMirror
1434:Cloud9 IDE
1419:comparison
1373:Komodo IDE
1324:WebSharper
1314:PureScript
1294:LiveScript
1274:Emscripten
1221:TypeScript
1172:JavaScript
837:References
831:PureScript
826:TypeScript
804:2019-10-18
792:Bug fixes
786:2019-07-01
768:2019-01-11
742:2018-11-24
730:Bug fixes
724:2018-06-02
706:2018-05-23
688:2018-03-27
670:2018-03-15
652:2017-10-27
631:2017-07-27
613:2017-03-26
595:2017-03-13
577:2016-12-25
559:2016-11-17
547:Bug fixes
541:2016-10-24
523:2016-10-18
505:2016-05-31
487:2012-08-15
469:2012-01-29
451:2011-10-25
433:2011-10-10
415:2011-10-08
217:functional
209:imperative
198:JavaScript
175:JavaScript
83:2011-10-08
43:functional
35:structured
31:Imperative
1751:Ryan Dahl
1355:Debuggers
1208:Supersets
1119:. Zeomag.
980:Softpedia
961:InfoWorld
64:Developer
1679:CommonJS
1602:WebAuthn
1545:Related
1463:PhpStorm
1451:Brackets
1415:Editors
1333:Concepts
1244:AtScript
1102:SD Times
1051:SD Times
942:SD Times
820:See also
601:Classes
570:0.4.2.4
552:0.4.2.2
534:0.4.2.1
480:0.014.1
403:Changes
344:Mac OS X
334:Compiler
314:that is
306:Features
26:Paradigm
1720:Jasmine
1694:Node.js
1651:esbuild
1641:Webpack
1505:Engines
802: (
784: (
766: (
750:Unicode
740: (
735:0.8.10
722: (
704: (
686: (
668: (
650: (
629: (
611: (
593: (
575: (
557: (
539: (
521: (
503: (
485: (
467: (
449: (
431: (
413: (
384:Webpack
340:Windows
227:History
221:generic
200:with a
133:Website
112:License
105:dynamic
97:Gradual
81: (
47:generic
1739:People
1565:asm.js
1319:Reason
1299:Morfik
1198:JSLint
1193:JSHint
1188:ESLint
797:0.9.2
779:0.9.1
761:0.9.0
754:Base64
717:0.8.5
699:0.8.4
681:0.8.1
663:0.8.0
645:0.7.0
624:0.5.2
606:0.5.1
588:0.5.0
516:0.4.2
498:0.4.1
462:0.013
444:0.012
426:0.011
370:, and
346:, and
235:Syntax
219:, and
101:static
1730:QUnit
1725:Mocha
1585:HTML5
1468:Orion
1406:JSDoc
1249:Babel
1226:ArkTS
408:0.01
348:Linux
316:sound
202:sound
185:is a
144:/jspp
140:.onux
1710:list
1689:JSGI
1684:Deno
1646:Vite
1625:yarn
1592:JSON
1580:HTML
1555:Ajax
1441:Atom
1289:Haxe
1264:Dart
1216:JS++
368:Atom
294:true
285:bool
192:for
183:JS++
171:Java
142:.com
68:Onux
20:JS++
1674:Bun
1620:npm
1495:Vim
1429:Ace
1309:Opa
1304:Nim
1269:Elm
267:var
249:int
163:C++
138:www
1778::
1100:.
1081:.
1049:.
1015:.
996:.
978:.
959:.
940:.
752:,
386:.
374:.
366:,
354:.
342:,
318:.
215:,
211:,
173:,
169:,
167:C#
165:,
161:,
103:,
99:,
45:,
41:,
37:,
33:,
1712:)
1708:(
1421:)
1417:(
1164:e
1157:t
1150:v
1104:.
1053:.
1019:.
1000:.
982:.
963:.
944:.
806:)
788:)
770:)
744:)
726:)
708:)
690:)
672:)
654:)
633:)
615:)
597:)
579:)
561:)
543:)
525:)
507:)
489:)
471:)
453:)
435:)
417:)
297:;
291:=
288:z
279:;
276:2
273:=
270:y
261:;
258:1
255:=
252:x
159:C
146:/
85:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.