Top 1K Features Creators Events Podcasts Books Extensions Interviews Blog Explorer CSV

Semantic Indentation

< >
Example from 1 languages: Python
class Person (object): def __init__(self, name): self.name = name
Example from 1 languages: PureScript
-- https://github.com/purescript/documentation/blob/master/language/Syntax.md -- Syntax is whitespace sensitive. The general rule of thumb is that declarations which span multiple lines should be indented past the column on which they were first defined on their subsequent lines. foo = bar + baz
Example from 1 languages: FlowchartFun
Node A goes to: Node B
Example from 1 languages: Scroll
* A link to PLDB http://pldb.info
Example from 1 languages: Particles
example title Particle Notation
Example from 1 languages: Cirru
print + 1 2 , 11
Example from 1 languages: Z
defun message msg do print : Here's a message print msg print : End of message.
Example from 1 languages: Speedie
class Person |string| name
Example from 1 languages: Crap
// Similar to python or lua
Example from 2 languages: Note, Space
settings title Note
Example from 1 languages: Sheep
define pythtree ax:real ay:real bx:real by:real depth:int do cx = ax-ay+by end
*

Languages with Semantic Indentation include Python, Haskell, CoffeeScript, Markdown, YAML, Nim, Elm, Pug, F#, PureScript, HAML, Org Mode, Make, Sass, reStructuredText, Imba, Literate CoffeeScript, FlowchartFun, Toit, Nemerle, wisp, Scroll, Particles, Boo, SCSS, Cyber, LiveScript, XL, Stylus, Inform, Argdown, ABC, Cobra, bog, Rhombus, Curry, Occam, Genie, Miranda, Cirru, Z, Spin, Ohayo, Aldor, ISWIM, Speedie, Quaint, ELFE, Crap, Note, Calcit, PROMAL, TQL, Space, BuddyScript, p4p, beads-lang, Truth, Sweet Expressions, noon, Indental, Misty, Sheep, McKeeman Form, I-expressions, converge, Ordered graph data language, CSL, net-format, MADCAP VI, MADCAP, bml

*

Languages without Semantic Indentation include JavaScript, C, Java, HTML, CSS, Perl, Ruby, PHP, Go, XML, JSON, SQL, TypeScript, C#, R, PowerShell, Bash, Rust, Swift, MATLAB, Scala, Lua, Kotlin, Clojure, Elixir, Erlang, Prolog, SAS, Objective-C, Julia, Mathematica, Dart, CUDA, Solidity, COBOL, Racket, Visual Basic, Pascal, TOML, Fortran, Ada, PostgreSQL, Crystal, MySQL, Reason, GraphQL, D, Haxe, Scheme, Chapel, awk, Groovy, Tex, SPSS, OCaml, LLVM IR, Gleam, HCL, Smalltalk, SVG, Tcl, VHDL, JSON5, Rescript, Idris, Odin, Forth, Deno, Protocol Buffers, Visual Basic .NET, Ini, APL, Yacc, ARM, Embedded Crystal, OpenCL, LaTeX, C3, Red, J, fish, Maple, starlark, Flow, ANTLR, Standard ML, IDL, V, KaTeX, Dhall, Fennel, Stata, Delphi, ABAP, ActionScript, PostCSS, Verilog, Ballerina, PRQL, Hy, Factor, FLUX, AutoHotkey, BASIC, Wren, PostScript, MUMPS, ColdFusion, XQuery, Common Lisp, Eiffel, Wa-lang, EDN, Smali, PEG.js, NetLogo, DOT, MoonScript, API Blueprint, Vala, Lex, Koka, Zephir, M4, Pig Latin, Logo, Jsonnet, Frege, VBScript, MLIR, Dafny, carp, QML, PL/SQL, Eve, Nginx, Nearley, Terra, GNU Octave, Opa, Halide, Agda, CIR, Nextflow, PL/I, Processing, Jison, AMPL, unison, Taichi, Emacs Lisp, Sage, DTrace, Regular Expressions, Squirrel, Mercury, Expect, Wolfram Language, POV-Ray SDL, OpenSCAD, Hack, Modula-2, Hjson, GAP, Lil, Ron, YASnippet, ALGOL 60, SystemVerilog, Applescript, mgmt, Rexx, Ceylon, PowerBuilder, AspectJ, x86 Assembly, Oberon, ECL, progsbase, Cue, Scilab, TLA+, Click, K, idyll, WDL, Observable, Clean, Slope, AutoIt, AGC, JAI, eC, Bison, Simula, Golo, Ring, datascript, Felix, Transact-SQL, CWL, Datalog, Mirah, Isabelle, Logica, BCPL, EBNF, SuperCollider, CIL, Mu, Xojo, Dylan, REBOL, SugarSS, X10, Raku, Modula-3, ArkScript, B, JCL, Closure Templates, xBase, Oz, Self, Lily, Maxima, Modelica, mun-lang, Neko, JFlex, Veryl, ATS, NewLisp, Java Properties, Xtend, Fancy, LFE, CLIPS, Io, SourcePawn, Fantom, Pike, NCAR Command Language, NSIS, PAWN, Logtalk, Befunge, Object Pascal, Icon, Dockerfile, Praat Script, Filebench WML, Turing, Whiley, Objective C++, Lasso, LilyPond, Csound, P4, E, UrWeb, dlvm, PureBasic, LiveCode, Jule, lispyscript, JSON with Comments, GDScript, Euphoria, IGOR Pro, Logos, Angelscript, Gherkin, Cg, Clipper, Limbo, XSLT, Ch, JADE, Monkey, Objective-J, Guile, SNOBOL, spry, Neut, Croc, Classroom Object Oriented Language, Harbour, Alloy, Spatial, Volt, Concise Encoding, Ragel, dex, Fortress, Apex, OCL, Pan, CIL, Ren'Py, Mask, MQL5, Falcon, Netwide Assembler, Vigil, C shell, Java Bytecode, PicoLisp, PL/M, OX, spiral, popr, Seed7, Tea, Not Quite C, NestedText, UNLAMBDA, Augmented Backus-Naur Form, Script.NET, FreeBASIC, Linden Scripting Language, Opal, Gentoo Ebuild, PARI/GP, DM, LPC, PIC, Joy, MAXScript, NetLinx, Eclipse Command Language, Jasmin, ldpl, Oberon-2, Vale, Bluespec, Game Maker Language, RELAX NG, BitBake, dedukti, S-PLUS, SETL, SMT, HOPE, Dc, BETA, Strips, WebIDL, Unicon, Cycript, HiveQL, monte, Structured Query Reporter, Slice, storyscript, Nymph, LoomScript, Cell, MiniD, Sather, COMPONENT PASCAL, LotusScript, Lingo, gentee, Hocon, Rc, Claro, Ezhil, CartoCSS, XS, Refal, LookML, Grammatical Framework, RenderScript, SRecode Template, Type Language, Brightscript, Gambas, Adventure Game Studio Script, Not eXactly C, KRL, MOO, Maya Embedded Language, Edje Data Collection, GCC Machine Description, ShaderLab, tht, Project Mentat, Orc, Charity, CLIST, kai, BLISS, Action!, Parser 3, Wart, Frink, JCOF, Mouse, silk, HAGGIS, manool, QB64, S-algol, Heron, Recfiles, NetRexx, Yet Another Scripting Language, KiXtart, PLY, JS++, OpenVera, Alpine Abuild, ARexx, mmCIF, XBase++, Object File Format, NS Basic, Yoix, winxed, Mary, MVEL, PowerBASIC, neeilang, xxl, Plus, carth, Simple Actor Language System and Architecture, EuLisp, Language Server Index Format, Lite-C, taf, Judoscript, Bel, Fj枚lnir, owen-lang, Rust MIR, Xbasic, X3D, Swift SIL, FutureBASIC, OEM, PowerQuery M, Handel-C, blockml, VHDL-AMS, SimCode, STEP, Ion, Fable, Tuple space, blz, Arden syntax, z80, True BASIC, Ren, ISETL, False, omega, MACRO-10, XPL0, Pnuts, S3, ProbeVue, hilvl, Atomese, Action Code Script, JSL, ActiveVFP, fizz, flagship, Guix Workflow Language, SAT, Operational Control Language, CLOS, epsilon, Plot, rosette-lang, Zimpl, lain, stella, verifpal, holyc, ThinBasic, FML, StarOffice Basic, Cach茅 Basic, Fibonacci, ArchieML, Bla, luau, OptimJ, Finite State Language, Module Management System, Soy, Parrot BASIC, XBLite, ca65 Assembly, GraphQL Schema Definition Language, Literate Agda, rbs, Reactive Plan Language, WxBasic, StruQL, SubX, Yedalog, Turbo Basic, Treelang, bioscript, ctalk-lang, dslx, Manchester syntax, Portable Bit Map Format, Netpbm grayscale image format, ppm-format, txr, wescheme, CFScript, ddfql, turnstile, Creative Basic, tremor-query, rbscript, sora, WebAssembly Text Format, zephyr-asdl

*

View all concepts with or missing a hasSemanticIndentation measurement

*

Read more about Semantic Indentation on the web: 1.

- Build the next great programming language Add Add Prompt Issues About Search Keywords Livestreams Labs Resources Acknowledgements