Top 1,000 Features Creators Resources Extensions Blog Explorer Download
GitHub icon

Features

A list of 166 features found in programming languages. View all features.

We also have a page of all keywords and all file extensions.

title pseudoExample yes no percentage
Comments # Hello PLDB 623 4269 13%
Line Comments # Hello PLDB 526 4366 11%
Strings "Hello PLDB" 365 4527 7%
Print() Debugging print "Hello PLDB" 318 4574 7%
MultiLine Comments /* Hello PLDB */ 224 4668 5%
Integers 80766866 159 4733 3%
Floats 80766866.0 137 4755 3%
Booleans pldb = true 116 4776 2%
Hexadecimals 0x4D06792 107 4785 2%
Conditionals if (isTrue) printPldb() 73 4819 1%
Semantic Indentation line0 if true line1 print "Hello PLDB" 66 4826 1%
Octals 0o464063622 52 4840 1%
Assignment name = "PLDB" 52 4840 1%
While Loops while (pldb.pop()) loop() 48 4844 1%
Binary Literals 0b100110100000110011110010010 48 4844 1%
File Imports import pldb 44 4848 1%
Functions function computePLDBRanks() {} 42 4850 1%
Operator Overloading def __add__(): doSomethingDifferent() 33 4859 1%
Classes class PLDBFile {} 30 4862 1%
Constants const name = "PLDB" 27 4865 1%
Type Inference imAString = "pldb" 26 4866 1%
Macros #define pldbItems 4000 26 4866 1%
Switch Statements switch animal: case dog-buy; case cat-sell; 24 4868 0%
Case Insensitive Identifiers pLdB = "PLDB" 23 4869 0%
Exceptions throw new Error("PLDB uh oh") 22 4870 0%
Lists [2, 3, 10] 21 4871 0%
Pointers int *pldb 20 4872 0%
Directives use strict; 20 4872 0%
Inheritance class PLDBFile extends File 19 4873 0%
Case Sensitivity pldb != PLDB 18 4874 0%
Access Modifiers class PLDBFile { public title } 18 4874 0%
Garbage Collection var iDontNeedToFreeThis 17 4875 0%
Lispy (+ 1 2) 15 4877 0%
Constructors PLDBFile { constructor() {} } 15 4877 0%
Scientific Notation 8076686.6e1 14 4878 0%
Multiple Inheritance extends parentWhichExtendsSomethingElse 14 4878 0%
Multiline Strings hello = """Hello\nPLDB""" 13 4879 0%
Message Passing "get pldb" 12 4880 0%
Bitwise Operators 3 == (2 | 1) 11 4881 0%
Static Typing int pldbRank = 100 10 4882 0%
Module Pattern module PLDB {} 10 4882 0%
Single Dispatch person.run() 9 4883 0%
Regular Expression Syntax Sugar /pldb/ 9 4883 0%
Pattern Matching fib 0 = 1; fib 1 = 1 9 4883 0%
Increment and decrement operators i++ 9 4883 0%
Here Document `A big multliline text block` 9 4883 0%
Zero-based numbering firstItem = pldb[0] 8 4884 0%
Threads thread1(); thread2(); 8 4884 0%
Ternary operators true ? 1 : 0 8 4884 0%
Structs struct pldbFile { int rank; char *title; }; 8 4884 0%
Mixins extends pldbFile, diskFile 8 4884 0%
Homoiconicity (list ()) 8 4884 0%
Enums colorsEnum { "red", "white", "blue"} 8 4884 0%
Namespaces namespace PLDB {} 7 4885 0%
Maps {name: "PLDB"} 7 4885 0%
Iterators for lang in pldb() 7 4885 0%
Infix Notation 1 + 2 7 4885 0%
Function Composition o = (f, g) => x => f(g(x)) 7 4885 0%
Fixed Point Numbers 80766866.00 7 4885 0%
Type Casting (float)pldbRank; 7 4885 0%
Disk Output write("pldb.csv", "...") 7 4885 0%
Variadic Functions args.map(doSomething) 6 4886 0%
Units of Measure 42cm 6 4886 0%
Partial Application add5 = num => addNumbers(10, num) 6 4886 0%
Manual Memory Management malloc(4); 6 4886 0%
Interfaces interface PLDBFile 6 4886 0%
Generics function identity<T>(arg: T): T 6 4886 0%
hasForLoops 6 4886 0%
hasForEachLoops 6 4886 0%
Anonymous Functions () => printPldb() 6 4886 0%
Shebang #! /run 6 4886 0%
Prefix Notation + 1 2 5 4887 0%
Polymorphism a + "b"; 1 + 2 5 4887 0%
Pipes ls pldb | wc 5 4887 0%
Null uhOh = null 5 4887 0%
Expressions (1 + 2) 5 4887 0%
Doc comments // param1: A comment about the first param 5 4887 0%
Dependent types pldbSortedList // a list where is sorted is true 5 4887 0%
Default Parameters Pattern say(message = "Hello PLDB") 5 4887 0%
hasContinue 5 4887 0%
hasBreak 5 4887 0%
Async Await async downloadPldb => await getFiles() 5 4887 0%
Assert Statements assert(isTrue) 5 4887 0%
Union Types any = string | number 4 4888 0%
Unicode Identifers 未 = 0.00001 4 4888 0%
Unary Operators count++ 4 4888 0%
Typed Holes 2 + _ => 2 + [int|float] 4 4888 0%
Templates template TCopy(T) {} 4 4888 0%
Symbol Tables SymbolName|Type|Scope;bar|function,double|extern 4 4888 0%
Single-Type Arrays const pldbRanks: int[] 4 4888 0%
Sets {"pldb", "PLDB"} 4 4888 0%
Range Operator 1 ... 10 4 4888 0%
Postfix Notation 2 3 4 + 2 - 4 4888 0%
Operators 1 + 1 4 4888 0%
Multiple Dispatch collide_with(x::Spaceship, y::Spaceship) 4 4888 0%
Gotos goto 10 4 4888 0%
Generators yield 2 4 4888 0%
Function Overloading add(string: str, string2: str) 4 4888 0%
Destructuring {title, rank} = pldbFile 4 4888 0%
hasSymbols 3 4889 0%
Streams echo 123 | 123.txt 3 4889 0%
hasSelfOrThisWord 3 4889 0%
hasReservedWords 3 4889 0%
Methods pldbFile.downloadWebsite() 3 4889 0%
Magic Getters and Setters get(name) => obj[name] 3 4889 0%
Lazy Evaluation print(range(1000000)[2]) 3 4889 0%
Labels mainFn: 3 4889 0%
hasIfs 3 4889 0%
hasIfElses 3 4889 0%
hasGlobalScope 3 4889 0%
hasFnArguments 3 4889 0%
First-Class Functions [2.1].map(Math.round) 3 4889 0%
hasEscapeCharacters 3 4889 0%
Dynamic Properties pldb.score = 50 3 4889 0%
Duck Typing length() // makes me an iterator 3 4889 0%
Dispose Blocks Pattern with pldb: do computeRanks() 3 4889 0%
Characters char character = 'P'; 3 4889 0%
Breakpoints debugger; 2 4890 0%
Merges Whitespace result = 1 + 2 2 4890 0%
Letter-first Identifiers pldb100 = "OK" // 100pldb = "ERROR" 2 4890 0%
hasVoidFunctions 2 4890 0%
Virtual function virtual FetchPLDBFile(); 2 4890 0%
Variable Substitution Syntax name = "PLDB"; print $name 2 4890 0%
hasUserDefinedOperators 2 4890 0%
Type Parameters function identity<T>(arg: T): T {return arg} 2 4890 0%
Type Annotations score: number 2 4890 0%
Traits use redBorder 2 4890 0%
hasTimestamps 2 4890 0%
hasStringConcatOperator 2 4890 0%
Static Methods static downloadPldb() {} 2 4890 0%
Statements print "Hello PLDB" 2 4890 0%
hasStatementTerminatorCharacter 2 4890 0%
Source Maps {file: 'pldb.min.js',sources: ['pldb.js'], mappings: 'CAAC,IAAI,IAAM'} 2 4890 0%
Runtime Guards f x | x > 0 = 1 | otherwise = 0 2 4890 0%
hasRequiredMainFunction 2 4890 0%
References fn(objPointer) 2 4890 0%
hasMemberVariables 2 4890 0%
Map Functions pldbFiles.map(downloadFilesFn) 2 4890 0%
Implicit Type Casting console.log("hello " + 2) 2 4890 0%
Implicit Arguments shout(implicit message: string) 2 4890 0%
hasExports 2 4890 0%
hasDynamicSizedArrays 2 4890 0%
Decimals 0.80766866 2 4890 0%
hasBuiltInRegex 2 4890 0%
hasBoundedCheckedArrays 2 4890 0%
Binary Operators 1 + 1 2 4890 0%
hasArraySlicingSyntax 2 4890 0%
Algebraic Data Type garageContents = empty | vehicle 2 4890 0%
canReadCommandLineArgs 2 4890 0%
Zippers pldbCursor.moveLeft() 1 4891 0%
hasValueReturnedFunctions 1 4891 0%
hasTryCatch 1 4891 0%
Triples Javascript isListedIn PLDB 1 4891 0%
S-Expressions (+ 1 1) 1 4891 0%
Refinement Types evenInt where int % 2 = 0 1 4891 0%
Processor Registers eax 2 1 4891 0%
Pairs (pl . db) 1 4891 0%
Monad g >>= f 1 4891 0%
hasMethodOverloading 1 4891 0%
Method Chaining pldbFile.toString().length 1 4891 0%
hasIds 1 4891 0%
hasDynamicTyping 1 4891 0%
Clobs class PLDBFile {} 1 4891 0%
hasBlobs 1 4891 0%
Abstract Types abstract class PLDBFile {} 1 4891 0%
canUseQuestionMarksAsPartOfIdentifier 1 4891 0%

View source

- Build the next great programming language About Acknowledgements Published by Breck's Lab