438:
337:
204:
33:
311:
implemented assignment as a statement rather than an expression, thus prohibiting assignment from nesting inside any other statement or expression. (Until version 3.8 added 'assignment expressions', with a different syntax.)
889:
581:
729:
354:
17:
795:
859:
808:
401:
109:
373:
81:
380:
88:
958:
214:
57:
of the topic and provide significant coverage of it beyond a mere trivial mention. If notability cannot be shown, the article is likely to be
893:
1624:
387:
95:
261:
788:
369:
77:
1372:
1234:
673:
1378:
449:
781:
265:
222:
1563:
1311:
229:
1031:
297:
162:
394:
102:
420:
247:
128:
1403:
1083:
1027:
534:
1263:
1136:
1067:
1002:
925:
187:
1441:
1204:
834:
519:
358:
316:
282:
1219:
1209:
987:
539:
514:
509:
308:
275:
150:
54:
1603:
1583:
1513:
1456:
1418:
1408:
1368:
1293:
1229:
1199:
1126:
1115:
1012:
992:
967:
930:
753:
556:
529:
166:
649:
1558:
1321:
1288:
1183:
1159:
1121:
1101:
997:
906:
884:
869:
684:
524:
504:
484:
479:
293:
180:
172:
1505:
1491:
1398:
1358:
1283:
1189:
1169:
1036:
915:
849:
289:
50:
1598:
1363:
1273:
1253:
1239:
489:
66:
1578:
1538:
1481:
1413:
1151:
982:
706:
154:
1588:
1568:
1509:
1496:
1476:
1303:
1040:
944:
902:
773:
347:
218:
1548:
1523:
1517:
1461:
1423:
1111:
1106:
1058:
953:
854:
826:
817:
561:
1450:
1446:
1388:
1340:
910:
1593:
1573:
1533:
1335:
1194:
1063:
1050:
804:
270:
Critics, including language designers, blame expression-orientation for an entire class of
146:
43:
8:
1528:
1466:
1278:
1258:
1244:
976:
844:
839:
1345:
1298:
1268:
1214:
1073:
972:
864:
62:
1501:
1393:
1248:
1224:
1164:
1131:
1093:
1078:
1017:
695:
631:
301:
58:
1383:
1315:
1179:
920:
621:
1433:
1307:
1173:
874:
1485:
1141:
1007:
1618:
1471:
635:
717:
271:
158:
685:
The Java
Language Specification, Java SE 8 Edition "14.9 The if Statement"
281:, which replaces a variable with an expression rather than testing it for
1353:
437:
320:
315:
In some expression-oriented languages, expressions that merely cause
626:
609:
336:
469:
176:
803:
49:
Please help to demonstrate the notability of the topic by citing
262:
Assignment (computer science) § Assignment versus equality
266:
Relational operator § Confusion with assignment operators
544:
499:
474:
494:
707:
The Python
Language Reference "6.2. Assignment statements"
165:, which expression-oriented languages often treat as
153:
and thus yields a value. The typical exceptions are
149:
in which every (or nearly every) construction is an
361:. Unsourced material may be challenged and removed.
674:Java Code Conventions "10.4 Variable Assignments"
1616:
614:Proceedings of the ACM on Programming Languages
789:
296:prevent this type of mistake by restricting
730:"Functions - The Rust Programming Language"
274:wherein a programmer accidentally codes an
193:
796:
782:
582:"Glossary - The Rust Programming Language"
370:"Expression-oriented programming language"
78:"Expression-oriented programming language"
860:Programming in the large and in the small
625:
421:Learn how and when to remove this message
248:Learn how and when to remove this message
129:Learn how and when to remove this message
18:Expression-oriented programming languages
228:Relevant discussion may be found on the
183:is not an expression-oriented language.
143:expression-oriented programming language
300:to those that evaluate strictly to the
14:
1617:
777:
607:
603:
601:
432:
359:adding citations to reliable sources
330:
197:
26:
1625:Programming language classification
179:are expression-oriented languages.
24:
25:
1636:
754:"COS 326: Functional Programming"
718:"PEP 572: Assignment Expressions"
650:"Expression Oriented Programming"
598:
1404:Partitioned global address space
436:
335:
202:
188:functional programming languages
31:
746:
346:needs additional citations for
722:
711:
700:
689:
678:
667:
642:
574:
13:
1:
567:
931:Uniform Function Call Syntax
654:Knoldus - Technical Insights
44:general notability guideline
7:
1399:Parallel programming models
1373:Concurrent constraint logic
550:
326:
10:
1641:
1492:Metalinguistic abstraction
1359:Automatic mutual exclusion
259:
51:reliable secondary sources
40:The topic of this article
1547:
1432:
1364:Choreographic programming
1334:
1150:
1092:
1049:
952:
943:
883:
825:
816:
610:"The early history of F#"
190:are expression-oriented.
42:may not meet Knowledge's
1414:Relativistic programming
608:Syme, Don (2020-06-14).
557:Command–query separation
211:This article or section
194:Criticism and prevention
1424:Structured concurrency
809:Comparison by language
562:Functional programming
285:with that expression.
1389:Multitier programming
1205:Interface description
805:Programming paradigms
215:synthesis of material
758:www.cs.princeton.edu
355:improve this article
272:programming mistakes
147:programming language
1529:Self-modifying code
1137:Probabilistic logic
1068:Functional reactive
1023:Expression-oriented
977:Partial application
298:control expressions
1442:Attribute-oriented
1215:List comprehension
1160:Algebraic modeling
973:Anonymous function
865:Design by contract
835:Jackson structures
448:. You can help by
225:to the main topic.
219:verifiably mention
213:possibly contains
46:
1612:
1611:
1502:Program synthesis
1394:Organic computing
1330:
1329:
1235:Non-English-based
1210:Language-oriented
988:Purely functional
939:
938:
466:
465:
431:
430:
423:
405:
307:The designers of
302:boolean data type
288:The designers of
258:
257:
250:
139:
138:
131:
113:
41:
16:(Redirected from
1632:
1514:by demonstration
1419:Service-oriented
1409:Process-oriented
1384:Macroprogramming
1369:Concurrent logic
1240:Page description
1230:Natural language
1200:Grammar-oriented
1127:Nondeterministic
1116:Constraint logic
1018:Point-free style
1013:Functional logic
950:
949:
921:Immutable object
840:Block-structured
823:
822:
798:
791:
784:
775:
774:
768:
767:
765:
764:
750:
744:
743:
741:
740:
726:
720:
715:
709:
704:
698:
693:
687:
682:
676:
671:
665:
664:
662:
661:
646:
640:
639:
629:
605:
596:
595:
593:
592:
578:
461:
458:
440:
433:
426:
419:
415:
412:
406:
404:
363:
339:
331:
253:
246:
242:
239:
233:
206:
205:
198:
134:
127:
123:
120:
114:
112:
71:
35:
34:
27:
21:
1640:
1639:
1635:
1634:
1633:
1631:
1630:
1629:
1615:
1614:
1613:
1608:
1550:
1543:
1434:Metaprogramming
1428:
1344:
1339:
1326:
1308:Graph rewriting
1146:
1122:Inductive logic
1102:Abductive logic
1088:
1045:
1008:Dependent types
956:
935:
907:Prototype-based
887:
885:Object-oriented
879:
875:Nested function
870:Invariant-based
812:
802:
772:
771:
762:
760:
752:
751:
747:
738:
736:
728:
727:
723:
716:
712:
705:
701:
696:Introducing Ada
694:
690:
683:
679:
672:
668:
659:
657:
648:
647:
643:
627:10.1145/3386325
606:
599:
590:
588:
580:
579:
575:
570:
553:
462:
456:
453:
446:needs expansion
427:
416:
410:
407:
364:
362:
352:
340:
329:
268:
254:
243:
237:
234:
227:
217:which does not
207:
203:
196:
135:
124:
118:
115:
72:
70:
48:
36:
32:
23:
22:
15:
12:
11:
5:
1638:
1628:
1627:
1610:
1609:
1607:
1606:
1601:
1596:
1591:
1586:
1581:
1576:
1571:
1566:
1561:
1555:
1553:
1545:
1544:
1542:
1541:
1536:
1531:
1526:
1521:
1499:
1494:
1489:
1479:
1474:
1469:
1464:
1459:
1454:
1444:
1438:
1436:
1430:
1429:
1427:
1426:
1421:
1416:
1411:
1406:
1401:
1396:
1391:
1386:
1381:
1376:
1366:
1361:
1356:
1350:
1348:
1332:
1331:
1328:
1327:
1325:
1324:
1319:
1304:Transformation
1301:
1296:
1291:
1286:
1281:
1276:
1271:
1266:
1261:
1256:
1251:
1242:
1237:
1232:
1227:
1222:
1217:
1212:
1207:
1202:
1197:
1192:
1190:Differentiable
1187:
1177:
1170:Automata-based
1167:
1162:
1156:
1154:
1148:
1147:
1145:
1144:
1139:
1134:
1129:
1124:
1119:
1109:
1104:
1098:
1096:
1090:
1089:
1087:
1086:
1081:
1076:
1071:
1061:
1055:
1053:
1047:
1046:
1044:
1043:
1037:Function-level
1034:
1025:
1020:
1015:
1010:
1005:
1000:
995:
990:
985:
980:
970:
964:
962:
947:
941:
940:
937:
936:
934:
933:
928:
923:
918:
913:
899:
897:
881:
880:
878:
877:
872:
867:
862:
857:
852:
850:Non-structured
847:
842:
837:
831:
829:
820:
814:
813:
801:
800:
793:
786:
778:
770:
769:
745:
721:
710:
699:
688:
677:
666:
641:
620:(HOPL): 1–58.
597:
572:
571:
569:
566:
565:
564:
559:
552:
549:
548:
547:
542:
537:
532:
527:
522:
517:
512:
507:
502:
497:
492:
487:
482:
477:
472:
464:
463:
443:
441:
429:
428:
343:
341:
334:
328:
325:
256:
255:
210:
208:
201:
195:
192:
161:commands, and
137:
136:
39:
37:
30:
9:
6:
4:
3:
2:
1637:
1626:
1623:
1622:
1620:
1605:
1602:
1600:
1597:
1595:
1592:
1590:
1587:
1585:
1582:
1580:
1577:
1575:
1574:Data-oriented
1572:
1570:
1567:
1565:
1562:
1560:
1557:
1556:
1554:
1552:
1546:
1540:
1537:
1535:
1532:
1530:
1527:
1525:
1522:
1519:
1515:
1511:
1507:
1503:
1500:
1498:
1495:
1493:
1490:
1487:
1483:
1480:
1478:
1475:
1473:
1472:Homoiconicity
1470:
1468:
1465:
1463:
1460:
1458:
1455:
1452:
1448:
1445:
1443:
1440:
1439:
1437:
1435:
1431:
1425:
1422:
1420:
1417:
1415:
1412:
1410:
1407:
1405:
1402:
1400:
1397:
1395:
1392:
1390:
1387:
1385:
1382:
1380:
1379:Concurrent OO
1377:
1374:
1370:
1367:
1365:
1362:
1360:
1357:
1355:
1352:
1351:
1349:
1347:
1342:
1337:
1333:
1323:
1320:
1317:
1313:
1309:
1305:
1302:
1300:
1297:
1295:
1292:
1290:
1287:
1285:
1282:
1280:
1277:
1275:
1274:Set-theoretic
1272:
1270:
1267:
1265:
1262:
1260:
1257:
1255:
1254:Probabilistic
1252:
1250:
1246:
1243:
1241:
1238:
1236:
1233:
1231:
1228:
1226:
1223:
1221:
1218:
1216:
1213:
1211:
1208:
1206:
1203:
1201:
1198:
1196:
1193:
1191:
1188:
1185:
1181:
1178:
1175:
1171:
1168:
1166:
1163:
1161:
1158:
1157:
1155:
1153:
1149:
1143:
1140:
1138:
1135:
1133:
1130:
1128:
1125:
1123:
1120:
1117:
1113:
1110:
1108:
1105:
1103:
1100:
1099:
1097:
1095:
1091:
1085:
1082:
1080:
1077:
1075:
1072:
1069:
1065:
1062:
1060:
1057:
1056:
1054:
1052:
1048:
1042:
1038:
1035:
1033:
1032:Concatenative
1029:
1026:
1024:
1021:
1019:
1016:
1014:
1011:
1009:
1006:
1004:
1001:
999:
996:
994:
991:
989:
986:
984:
981:
978:
974:
971:
969:
966:
965:
963:
960:
955:
951:
948:
946:
942:
932:
929:
927:
924:
922:
919:
917:
914:
912:
908:
904:
901:
900:
898:
895:
891:
886:
882:
876:
873:
871:
868:
866:
863:
861:
858:
856:
853:
851:
848:
846:
843:
841:
838:
836:
833:
832:
830:
828:
824:
821:
819:
815:
810:
806:
799:
794:
792:
787:
785:
780:
779:
776:
759:
755:
749:
735:
731:
725:
719:
714:
708:
703:
697:
692:
686:
681:
675:
670:
655:
651:
645:
637:
633:
628:
623:
619:
615:
611:
604:
602:
587:
583:
577:
573:
563:
560:
558:
555:
554:
546:
543:
541:
538:
536:
533:
531:
528:
526:
523:
521:
518:
516:
513:
511:
508:
506:
503:
501:
498:
496:
493:
491:
488:
486:
483:
481:
478:
476:
473:
471:
468:
467:
460:
457:February 2018
451:
447:
444:This section
442:
439:
435:
434:
425:
422:
414:
403:
400:
396:
393:
389:
386:
382:
379:
375:
372: –
371:
367:
366:Find sources:
360:
356:
350:
349:
344:This article
342:
338:
333:
332:
324:
322:
318:
313:
310:
305:
303:
299:
295:
291:
286:
284:
280:
277:
273:
267:
263:
252:
249:
241:
231:
226:
224:
220:
216:
209:
200:
199:
191:
189:
184:
182:
178:
174:
170:
168:
164:
160:
157:definitions,
156:
152:
148:
144:
133:
130:
122:
111:
108:
104:
101:
97:
94:
90:
87:
83:
80: –
79:
75:
74:Find sources:
68:
64:
60:
56:
52:
45:
38:
29:
28:
19:
1579:Event-driven
1022:
983:Higher-order
911:Object-based
761:. Retrieved
757:
748:
737:. Retrieved
733:
724:
713:
702:
691:
680:
669:
658:. Retrieved
656:. 2018-02-08
653:
644:
617:
613:
589:. Retrieved
585:
576:
454:
450:adding to it
445:
417:
408:
398:
391:
384:
377:
365:
353:Please help
348:verification
345:
317:side effects
314:
306:
287:
278:
269:
244:
235:
212:
185:
171:
163:declarations
159:preprocessor
142:
140:
125:
116:
106:
99:
92:
85:
73:
1589:Intentional
1569:Data-driven
1551:of concerns
1510:Inferential
1497:Multi-stage
1477:Interactive
1354:Actor-based
1341:distributed
1284:Stack-based
1084:Synchronous
1041:Value-level
1028:Applicative
945:Declarative
903:Class-based
734:web.mit.edu
586:web.mit.edu
55:independent
1564:Components
1549:Separation
1524:Reflective
1518:by example
1462:Extensible
1336:Concurrent
1312:Production
1299:Templating
1279:Simulation
1264:Scientific
1184:Spacecraft
1112:Constraint
1107:Answer set
1059:Flow-based
959:comparison
954:Functional
926:Persistent
890:comparison
855:Procedural
827:Structured
818:Imperative
763:2022-07-06
739:2022-07-06
660:2023-08-07
591:2022-07-06
568:References
381:newspapers
321:void types
279:expression
276:assignment
260:See also:
167:statements
151:expression
89:newspapers
63:redirected
1451:Inductive
1447:Automatic
1269:Scripting
968:Recursive
636:2475-1421
535:Smalltalk
411:July 2022
238:July 2022
230:talk page
119:July 2022
53:that are
1619:Category
1604:Subjects
1594:Literate
1584:Features
1539:Template
1534:Symbolic
1506:Bayesian
1486:Hygienic
1346:parallel
1225:Modeling
1220:Low-code
1195:End-user
1132:Ontology
1064:Reactive
1051:Dataflow
551:See also
470:ALGOL 68
327:Examples
283:equality
177:ALGOL 68
1559:Aspects
1467:Generic
1457:Dynamic
1316:Pattern
1294:Tactile
1259:Quantum
1249:filters
1180:Command
1079:Streams
1074:Signals
845:Modular
520:Haskell
395:scholar
319:return
103:scholar
67:deleted
1322:Visual
1289:System
1174:Action
998:Strict
634:
540:Kotlin
515:Erlang
510:Elixir
397:
390:
383:
376:
368:
309:Python
264:, and
223:relate
181:Pascal
105:
98:
91:
84:
76:
59:merged
1599:Roles
1482:Macro
1245:Pipes
1165:Array
1142:Query
1094:Logic
1003:GADTs
993:Total
916:Agent
545:OCaml
530:Scala
500:Rebol
475:BLISS
402:JSTOR
388:books
155:macro
145:is a
110:JSTOR
96:books
65:, or
1247:and
894:list
632:ISSN
525:Rust
505:Ruby
495:Perl
485:Lisp
480:Icon
374:news
294:Java
292:and
186:All
175:and
173:Lisp
82:news
1152:DSL
622:doi
452:.
357:by
290:Ada
221:or
141:An
1621::
1516:,
1512:,
1508:,
1314:,
1310:,
1039:,
1030:,
909:,
905:,
892:,
756:.
732:.
652:.
630:.
616:.
612:.
600:^
584:.
490:ML
323:.
304:.
169:.
61:,
1520:)
1504:(
1488:)
1484:(
1453:)
1449:(
1375:)
1371:(
1343:,
1338:,
1318:)
1306:(
1186:)
1182:(
1176:)
1172:(
1118:)
1114:(
1070:)
1066:(
979:)
975:(
961:)
957:(
896:)
888:(
811:)
807:(
797:e
790:t
783:v
766:.
742:.
663:.
638:.
624::
618:4
594:.
459:)
455:(
424:)
418:(
413:)
409:(
399:·
392:·
385:·
378:·
351:.
251:)
245:(
240:)
236:(
232:.
132:)
126:(
121:)
117:(
107:·
100:·
93:·
86:·
69:.
47:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.