Changes between Version 2 and Version 3 of BigIdeas/Modules


Ignore:
Timestamp:
Dec 6, 2018, 12:48:33 PM (16 months ago)
Author:
schiptsov
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BigIdeas/Modules

    v2 v3  
    11= Modules or Packages =
    22
    3 Modules or packages is the way to ensure encapsulation, export of symbols (names) and separation of abstraction layers (usually defined and implemented as layers of DSLs).
     3A module is a namespace (a distinct ''frame of the environment'', if you wish) that contains definitions (''bindings'') of functions or types, and you can choose whether those bindings are visible outside the module (public) or not (private).
    44
    5 Every well-crafted language has a well-defined module or package system with explicit exports and imports. Common Lisp, Haskell, Erlang, Go, Scala, Swift and even Python has good modules.
     5Modules or packages is the way to ensure encapsulation by appropriate export of symbols (names) and to establish clear separation of abstraction layers (usually defined and implemented as layers of DSLs).
    66
    7 Javascript or Java are a crap, as ususal.
     7Every well-crafted language has a well-defined module or package system with explicit exports and imports. Standard ML, Common Lisp, Haskell, Erlang, Go, Rust, Scala, Swift, and even Python has a good modules.
    88
     9C++, Javascript or Java are fucking crap, as usual.
    910