We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Oh a new Unix shell

00:00

Formal Metadata

Title
Oh a new Unix shell
Title of Series
Number of Parts
45
Author
License
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Oh is an attempt to reduce the Unix shell's strangeness while retaining its fundamental characteristics. Oh is familiar and recognizable as a Unix shell but with: - A more consistent and extensible syntax; - Richer data types, including first-class pipes, objects, and methods; and - Support for concurrent, higher-order and modular programming. You love your shell. You’ve been using it for ages and are extremely efficient with it but there are times when its little quirks are enough to drive you mad. Maybe it's: - Word splitting turning a file name with spaces into multiple file names that may or may not exist; - An undefined variable sending rm on a mission to delete all the files in the root directory; - Having to resort to various workarounds just to write a function that returns a string; or - Wishing there was some option for importing a module other than sourcing a file and dumping everything into the current context. You know that because the Unix shell "must satisfy both the interactive and programming aspects of command execution, it is a strange language, shaped as much by history as by design", but the Unix shell feels overly strange. Oh is an attempt to reduce the Unix shell's strangeness while retaining its fundamental characteristics. Oh is familiar and recognizable as a Unix shell but with: - A more consistent and extensible syntax; - Richer data types, including first-class pipes, objects, and methods; and - Support for concurrent, higher-order and modular programming. Oh is MIT-licensed, open-source software and is available on Github The author currently uses oh as his login, and primary interactive, shell on a machine running FreeBSD.
String (computer science)InterpolationGastropod shellPoint (geometry)Execution unitGastropod shellMultiplication signRow (database)Programming languageCharacteristic polynomialFundamental theorem of algebraVotingComputer animation
Fundamental theorem of algebraData structureGastropod shellInteractive televisionFormal languageIntegrated development environmentInterpreter (computing)Ideal (ethics)CoprocessorSystem programmingFreewareBSD UNIXGastropod shellFilter <Stochastik>Formal languageConstraint (mathematics)Computer programmingMetropolitan area networkExecution unitRegular graphComputer animationSource codeJSONXML
Numbering schemeGastropod shellInteractive televisionDirected graphFormal languageFamilyGastropod shellSet (mathematics)FamilyPublic domainElectronic mailing listMaizeLine (geometry)QuicksortAnalytic continuationCellular automatonExecution unitPlanningPoint (geometry)Open sourceGroup actionIntelligent NetworkMultiplication signImplementationSource codeComputer animationJSON
Interactive televisionGastropod shellDifferent (Kate Ryan album)Similarity (geometry)System programmingExecution unitMetropolitan area networkElectronic mailing listFamilyMessage passingGastropod shellSimilarity (geometry)Cellular automatonDifferent (Kate Ryan album)Expected valueDirection (geometry)outputBlogParameter (computer programming)Source codeJSONComputer animation
Numbering schemeGastropod shellVariable (mathematics)ProgrammschleifeComputer programmingHeegaard splittingString (computer science)Modulare ProgrammierungFamilyInclusion mapDuality (mathematics)Flash memoryReal numberProgramming languageNumbering schemeHand fanAuthorizationGastropod shellExecution unitSummierbarkeitComputer programmingModulare ProgrammierungType theoryInteractive televisionSystem callElectronic mailing listLimit (category theory)Variable (mathematics)Shared memoryCombinational logicError messageCodeQuicksortWeightFunction (mathematics)Integrated development environmentFunctional programmingComputer simulationOpen sourceParameter (computer programming)NumberCondition numberStandard deviationProcess (computing)CASE <Informatik>String (computer science)Expected valueSource codePRINCE2Field (computer science)Multiplication signCellular automatonSpacetimeSelf-organizationDifferential (mechanical device)Computer fileMilitary baseMedical imagingImplementationLetterpress printingWritingMaizeClique-widthException handlingDefault (computer science)Computer animation
Thermal expansionGastropod shellFormal languageEntire functionExtension (kinesiology)CodeBit rateVariable (mathematics)NumberProgramming languageCellular automatonShared memoryThermal expansionMultiplication signGastropod shell2 (number)Quicksort
Formal languageNumbering schemeGastropod shellSystems programming languageGastropod shellNumbering schemeProgrammer (hardware)Computer programmingQuicksortStandard deviationCodeSet (mathematics)Library (computing)Execution unitXMLJSON
Numbering schemeGastropod shellFormal languageComputer programmingAuthorizationNumbering schemeGastropod shellGame theoryScripting languageProgramming languageFormal languageComputer programmingPoint (geometry)Execution unitSystem programmingTerm (mathematics)WritingView (database)Data dictionaryDirectory serviceRight angleFile systemComputer fileComputer animation
Standard deviationInterpreter (computing)Functional programmingExecution unitElectronic mailing listGastropod shellPoint (geometry)QuicksortFormal languageComputer programmingAuthorizationRegular graphProgramming languageComputer animation
Line (geometry)Gastropod shellSystem programmingoutputGastropod shellStandard deviationMetropolitan area networkMechanism designMultiplication signBuildingPerformance appraisalSystem programmingFormal languageStrategy gameModal logicQuicksortSheaf (mathematics)Mobile Web2 (number)Greatest elementSource codeSource codeJSON
Function (mathematics)System callSeries (mathematics)Parameter (computer programming)Line (geometry)outputGastropod shellFormal languageThermal expansionLine (geometry)SpacetimeQuicksortSeries (mathematics)Heegaard splittingModal logicString (computer science)Parameter (computer programming)outputProfil (magazine)Right angleComplex (psychology)Formal languageVector potentialWeb pageCombinational logicGastropod shellSource codeAuthorizationGoodness of fitComputer animation
Interactive televisionFormal languageIntegrated development environmentIntegrated development environmentFormal languageSlide ruleCellular automatonGastropod shellComputer programmingStatement (computer science)Execution unitComputer animation
Computer fileGastropod shellSystem programmingTelecommunicationCodeType theoryIntegrated development environmentNumbering schemeSimilarity (geometry)Different (Kate Ryan album)Execution unitExpected valueGroup actionGastropod shellProgramming languageNumbering schemeGoodness of fitPositional notationUsabilityElectronic mailing listMIDIQuicksortComputer animationXMLUMLJSON
Cellular automatonCodeGastropod shellElement (mathematics)Electronic mailing list2 (number)Validity (statistics)Line (geometry)Point (geometry)Sheaf (mathematics)Disk read-and-write headStatement (computer science)QuicksortStructured programmingPositional notationType theoryMappingCellular automatonDrop (liquid)Numbering schemeVideo game consoleRight angleSet (mathematics)Multiplication signMassSinc functionComputer animation
CodeGastropod shellMotion captureRepresentation theoryElectronic mailing listNumbering schemeInterpreter (computing)Element (mathematics)Statement (computer science)ProgrammschleifeFormal languageGastropod shellLevel (video gaming)Point (geometry)Operator (mathematics)Cellular automatonMultiplication signMereologyFunctional programmingObject-oriented programmingNamespaceJava appletParsingStandard deviationComputer animation
String (computer science)Symbol tableIntegerBoolean algebraType theoryLevel (video gaming)Data typeElement (mathematics)Type theoryMereologyProcess (computing)Functional programmingString (computer science)Ferry CorstenNumberNumeral (linguistics)Gastropod shellCASE <Informatik>Fitness functionBuildingArithmetic meanContext awarenessCondition numberSelf-organizationGoodness of fitExistenceLevel (video gaming)Symbol tableECosSubject indexingOvalExecution unitRow (database)Parameter (computer programming)Set (mathematics)Analytic continuationFunction (mathematics)IntegerBoolean algebraCodeQuicksortComputer animation
System programmingGastropod shellBuildingBlock (periodic table)Integrated development environmentContext awarenessIntegrated development environmentNetwork topologyObject-oriented programmingMassLattice (order)Block (periodic table)ChainFormal languageGastropod shellMultilaterationSocial classImplementationContext awarenessTerm (mathematics)Error messageDoubling the cubeClosed setECosMetropolitan area networkCASE <Informatik>XMLJSONComputer animation
Object-oriented programmingOvalVariable (mathematics)Indian Remote SensingIntegrated development environmentFormal language1 (number)Modul <Datentyp>NamespaceSystem programmingPrototypeObject-oriented programmingNumberExpected valueVariable (mathematics)Modulare ProgrammierungSocial classAdditionSystem programmingFormal languageIntegrated development environmentType theoryGastropod shellTransport Layer SecurityMilitary baseError messagePrototypeDifferent (Kate Ryan album)Spezielle orthogonale GruppeMaxima and minimaComputer animation
Integrated development environmentSource codeModulare ProgrammierungModul <Datentyp>Source codeComputer fileObject-oriented programmingModulare ProgrammierungComputer animation
Formal languageKernel (computing)Integrated development environmentCodeBasis <Mathematik>Function (mathematics)HypothesisHypothesisNumbering schemeGroup actionProteinIntegrated development environmentElectronic mailing listMacro (computer science)Formal languageSystem programmingSocial classKernel (computing)CodeComputer animation
Kernel (computing)Parameter (computer programming)Expandierender GraphObject-oriented programmingIntegrated development environmentKernel (computing)Electronic mailing listAbstractionType theorySlide ruleParameter (computer programming)Form (programming)Gastropod shellSymbol tableThermal expansionOcean currentDifferent (Kate Ryan album)Expert systemIntelligent NetworkCodeBlock (periodic table)Formal languageBuildingMessage passingTerm (mathematics)ImplementationEntire functionBlogCuboidComputer animation
Kernel (computing)Kerr-LösungFunction (mathematics)Gastropod shellKeyboard shortcutWritingDirected graphGastropod shellNumbering schemeOperator (mathematics)Functional programmingParameter (computer programming)Goodness of fitElectronic mailing listIntegrated development environmentCellular automatonString (computer science)Set (mathematics)Data conversionProcess (computing)TelecommunicationStructured programmingSubject indexingComputer programmingDynamical systemBoolean algebraExpert systemCalculationSpacetimeElement (mathematics)Physical lawPoint (geometry)Pattern languageCASE <Informatik>PerimeterBit rateParsingGraph (mathematics)Right angleHeegaard splittingCovering spaceSelf-organizationTerm (mathematics)Declarative programmingProgramming languageSubstitute goodInteractive televisionBlock (periodic table)CodeMereologyComputer animation
Formal languageTelecommunicationConcurrency (computer science)Prime idealDigital filterCodeFormal languagePosition operatorProcess (computing)Substitute goodPresentation of a groupoutputPrime numberDiagramDivision (mathematics)MultiplicationOrder (biology)Multiplication signFunction (mathematics)Loop (music)BitAuthorizationTelecommunicationPoint (geometry)Term (mathematics)NeuroinformatikNumberStandard deviationReading (process)Goodness of fitBit rateDependent and independent variablesGroup actionComputer animation
Gastropod shellString (computer science)Parameter (computer programming)Performance appraisalPositional notationExecution unitGastropod shellFormal languageBitPositional notationTelecommunicationExpert systemPattern languageString (computer science)Uniform resource locatorPoint (geometry)Uniqueness quantificationType theoryDifferent (Kate Ryan album)Computer fileSocial classDynamical systemSound effectComputer animation
Heegaard splittingString (computer science)Variable (mathematics)Gastropod shellQuicksortPoint (geometry)CodeSineError messageProgramming languageString (computer science)Variable (mathematics)Electronic mailing listModulare ProgrammierungLimit (category theory)
MiniDiscRead-only memoryCodeGastropod shellOrder of magnitudeCodeQuicksortWeb pageMultiplication signMiniDiscPoint (geometry)Link (knot theory)Semiconductor memoryLine (geometry)Library (computing)System programming1 (number)MaizeTerm (mathematics)Order (biology)Equivalence relationReading (process)Computer animation
Thermal expansionSource codeBinary fileWeb pageGastropod shellMaizeBinary codeSource codeRow (database)Encapsulation (object-oriented programming)BitPower (physics)QuicksortSpacetimeDirectory serviceMultiplication signScripting languageHand fanStandard deviationRule of inferenceRevision controlOpen sourceData structureProgramming languageSpeicherbereinigungBootingPlanningNumbering schemeFormal languageCodeElectronic mailing listComplete metric spaceMilitary baseArray data structureFunction (mathematics)Object-oriented programmingComputer fileCue sportsMereologyBuildingComputer programmingHuman migrationFraction (mathematics)Functional programmingStreaming mediaOrder (biology)Computer configurationProgrammschleifeCASE <Informatik>Absolute valueWritingImplementationAuthorizationMoment (mathematics)Operator (mathematics)Spezielle orthogonale GruppeTunisMechanism designThread (computing)Bit rateVotingGroup actionEndliche ModelltheorieLevel (video gaming)Execution unitSystem callWeightHypothesisExpert systemMappingRight angleSineSpecial unitary groupString (computer science)Computer animation
Transcript: English(auto-generated)