A list of 66 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 | 637 | 5 | 99% |
Line Comments | # Hello PLDB | 533 | 27 | 95% |
Strings | "Hello PLDB" | 383 | 0 | 100% |
Print() Debugging | print "Hello PLDB" | 334 | 1 | 100% |
MultiLine Comments | /* Hello PLDB */ | 233 | 22 | 91% |
Integers | 80766866 | 171 | 1 | 99% |
Floats | 80766866.0 | 145 | 0 | 100% |
Booleans | pldb = true | 129 | 4 | 97% |
Hexadecimals | 0x4D06792 | 112 | 1 | 99% |
Conditionals | if (isTrue) printPldb() | 81 | 10 | - |
Semantic Indentation | line0 if true line1 print "Hello PLDB" | 66 | 536 | 11% |
Assignment | name = "PLDB" | 62 | 1 | - |
While Loops | while (pldb.pop()) loop() | 58 | 2 | - |
Octals | 0o464063622 | 57 | 1 | - |
Binary Literals | 0b100110100000110011110010010 | 53 | 1 | - |
File Imports | import pldb | 49 | 9 | - |
Functions | function computePLDBRanks() {} | 44 | 1 | - |
Operator Overloading | def __add__(): doSomethingDifferent() | 34 | 20 | - |
Classes | class PLDBFile {} | 33 | 7 | - |
Switch Statements | switch animal: case dog-buy; case cat-sell; | 32 | 1 | - |
Macros | #define pldbItems 4000 | 32 | 21 | - |
Constants | const name = "PLDB" | 31 | 1 | - |
Case Sensitivity | pldb != PLDB | 30 | 10 | - |
Type Inference | imAString = "pldb" | 29 | 0 | - |
Directives | use strict; | 27 | 2 | - |
Pointers | int *pldb | 26 | 10 | - |
Lists | [2, 3, 10] | 26 | 1 | - |
Exceptions | throw new Error("PLDB uh oh") | 26 | 5 | - |
Scientific Notation | 8076686.6e1 | 24 | 0 | - |
Case Insensitive Identifiers | pLdB = "PLDB" | 24 | 72 | - |
Inheritance | class PLDBFile extends File | 21 | 1 | - |
Access Modifiers | class PLDBFile { public title } | 21 | 6 | - |
Garbage Collection | var iDontNeedToFreeThis | 20 | 12 | - |
Constructors | PLDBFile { constructor() {} } | 20 | 5 | - |
Zero-based numbering | firstItem = pldb[0] | 17 | 3 | - |
Bitwise Operators | 3 == (2 | 1) | 17 | 1 | - |
Increment and decrement operators | i++ | 16 | 2 | - |
Single Dispatch | person.run() | 15 | 1 | - |
Multiple Inheritance | extends parentWhichExtendsSomethingElse | 15 | 9 | - |
Ternary operators | true ? 1 : 0 | 14 | 14 | - |
Lispy | (+ 1 2) | 13 | 1 | - |
Threads | thread1(); thread2(); | 13 | 0 | - |
Multiline Strings | hello = """Hello\nPLDB""" | 13 | 7 | - |
Enums | colorsEnum { "red", "white", "blue"} | 13 | 6 | - |
Message Passing | "get pldb" | 12 | 1 | - |
Maps | {name: "PLDB"} | 12 | 0 | - |
Type Casting | (float)pldbRank; | 12 | 0 | - |
Variadic Functions | args.map(doSomething) | 11 | 0 | - |
Structs | struct pldbFile { int rank; char *title; }; | 11 | 0 | - |
Assert Statements | assert(isTrue) | 11 | 1 | - |
Static Typing | int pldbRank = 100 | 10 | 0 | - |
Regular Expression Syntax Sugar | /pldb/ | 10 | 11 | - |
Module Pattern | module PLDB {} | 10 | 0 | - |
Manual Memory Management | malloc(4); | 10 | 0 | - |
Iterators | for lang in pldb() | 10 | 1 | - |
Interfaces | interface PLDBFile | 10 | 1 | - |
Namespaces | namespace PLDB {} | 9 | 4 | - |
Generics | function identity<T>(arg: T): T | 9 | 1 | - |
Function Composition | o = (f, g) => x => f(g(x)) | 9 | 1 | - |
Gotos | goto 10 | 8 | 4 | - |
Fixed Point Numbers | 80766866.00 | 8 | 7 | - |
Async Await | async downloadPldb => await getFiles() | 7 | 3 | - |
Function Overloading | add(string: str, string2: str) | 6 | 6 | - |
Disk Output | write("pldb.csv", "...") | 6 | 11 | - |
Units of Measure | 42cm | 5 | 5 | - |
Variable Substitution Syntax | name = "PLDB"; print $name | 2 | 20 | - |