SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
DOPPL
Data Oriented Parallel Programming Language

Development Diary
Iteration #4

Covered Concepts:
Boolean Type, Boolean Literals, Logic Operators

Diego PERINI
Department of Computer Engineering
Istanbul Technical University, Turkey
2013-07-22

1
Abstract
This paper stands for Doppl language development iteration #4. In this paper, a new primitive
data type for logic operations will be introduced. Common logic operators such as and, or, xor and not are
also defined in this iteration.

1. Rationale
Like any other high level programming language, Doppl offers a primitive type of bool to execute
logic operations in a native manner. A bool can only have values of true or false. Assigning any other
value is prohibited to enforce a unified methodology.

2. bool Type, Boolean Literals and Operations
Doppl bool is a primitive type like int and string which can easily be used for task members.
Bool members are initialized with Null by default like any other primitive type. Boolean types can only
store True or False as values (case sensitive), any other assignment is likely to yield a syntax error.
Implied typecasting will be explained in the iteration that introduces data traits.
Below are logical operators that can be used with boolean members, ordered by precedence
descendingly.

keyword

meaning

!

prefix not

and

logical and

nand

not(logical and)

or

logical or

nor

not(logical or)

xor

exclusive or

Boolean operations can make use of parentheses to manipulate order of execution.

2
Code example:
#An example task group of 2 tasks
task(1) BoolTypes {
data a_private_bool = bool
shared data a_shared_bool = bool
data my_bool = bool
#Examples
init: {
a_private_string = True
a_shared_string = False
my_bool
my_bool
my_bool
my_bool
my_bool
my_bool

=
=
=
=
=
=

True and False
True or False
True xor False
!True
True nand False
True nor False

#False
#True
#True
#false
#True
#False

my_bool = True and !False nor True and (True xor True)
#translates into
#((True and !(False)) nor (True and (True xor True)))
#((True and True) nor (True and False))
#(True nor False)
#!True
#False
}
}
It must be noted that Null is not False and boolean operators always yield syntax errors
whenever used with Null values.

3. Conclusion
Iteration #4 defines a new type called bool which is a simple boolean value of True or
False. Common boolean operations of and, nand, or, nor, xor and not can easily be conducted via
corresponding operators. Order of precedence is manipulated via regular parentheses. Using Null with
boolean operators is forbidden.

3
4. Future Concepts
Below are the concepts that are likely to be introduced in next iterations.
●
●
●
●
●
●
●
●
●
●
●
●

Arithmetic, relational and binary operators
String Concatenation
Standard input and output
if conditional and trueness
State transition operators
Primitive Collections and basic collection operators
Provision operators
Tasks as members
Task and data traits
Custom data types and defining traits
Built-in traits for primitive data types
Message passing

5. License
CC BY-SA 3.0
http://creativecommons.org/licenses/by-sa/3.0/

4

Más contenido relacionado

La actualidad más candente

Python Tutorial Questions part-1
Python Tutorial Questions part-1Python Tutorial Questions part-1
Python Tutorial Questions part-1Srinimf-Slides
 
Introduction To Programming with Python Lecture 2
Introduction To Programming with Python Lecture 2Introduction To Programming with Python Lecture 2
Introduction To Programming with Python Lecture 2Syed Farjad Zia Zaidi
 
Fundamentals of Computing and C Programming - Part 1
Fundamentals of Computing and C Programming - Part 1Fundamentals of Computing and C Programming - Part 1
Fundamentals of Computing and C Programming - Part 1Karthik Srini B R
 
Semantic Analysis of a C Program
Semantic Analysis of a C ProgramSemantic Analysis of a C Program
Semantic Analysis of a C ProgramDebarati Das
 
An Introduction : Python
An Introduction : PythonAn Introduction : Python
An Introduction : PythonRaghu Kumar
 
Lesson 03 python statement, indentation and comments
Lesson 03   python statement, indentation and commentsLesson 03   python statement, indentation and comments
Lesson 03 python statement, indentation and commentsNilimesh Halder
 
C++ Langauage Training in Ambala ! BATRA COMPUTER CENTRE
C++  Langauage Training in Ambala ! BATRA COMPUTER CENTREC++  Langauage Training in Ambala ! BATRA COMPUTER CENTRE
C++ Langauage Training in Ambala ! BATRA COMPUTER CENTREjatin batra
 
Polymorphism in Python
Polymorphism in Python Polymorphism in Python
Polymorphism in Python Home
 
NLP State of the Art | BERT
NLP State of the Art | BERTNLP State of the Art | BERT
NLP State of the Art | BERTshaurya uppal
 
Oop with c++ notes unit 01 introduction
Oop with c++ notes   unit 01 introductionOop with c++ notes   unit 01 introduction
Oop with c++ notes unit 01 introductionAnanda Kumar HN
 
Parts of Speect Tagging
Parts of Speect TaggingParts of Speect Tagging
Parts of Speect Taggingtheyaseen51
 

La actualidad más candente (20)

Python Tutorial Questions part-1
Python Tutorial Questions part-1Python Tutorial Questions part-1
Python Tutorial Questions part-1
 
Introduction To Programming with Python Lecture 2
Introduction To Programming with Python Lecture 2Introduction To Programming with Python Lecture 2
Introduction To Programming with Python Lecture 2
 
3.5
3.53.5
3.5
 
Fundamentals of Computing and C Programming - Part 1
Fundamentals of Computing and C Programming - Part 1Fundamentals of Computing and C Programming - Part 1
Fundamentals of Computing and C Programming - Part 1
 
Semantic Analysis of a C Program
Semantic Analysis of a C ProgramSemantic Analysis of a C Program
Semantic Analysis of a C Program
 
An Introduction : Python
An Introduction : PythonAn Introduction : Python
An Introduction : Python
 
Intro to NLP. Lecture 2
Intro to NLP.  Lecture 2Intro to NLP.  Lecture 2
Intro to NLP. Lecture 2
 
Lesson 03 python statement, indentation and comments
Lesson 03   python statement, indentation and commentsLesson 03   python statement, indentation and comments
Lesson 03 python statement, indentation and comments
 
Notes on c++
Notes on c++Notes on c++
Notes on c++
 
C++ Langauage Training in Ambala ! BATRA COMPUTER CENTRE
C++  Langauage Training in Ambala ! BATRA COMPUTER CENTREC++  Langauage Training in Ambala ! BATRA COMPUTER CENTRE
C++ Langauage Training in Ambala ! BATRA COMPUTER CENTRE
 
Polymorphism in Python
Polymorphism in Python Polymorphism in Python
Polymorphism in Python
 
Latest trends in NLP - Exploring BERT
Latest trends in NLP -  Exploring BERTLatest trends in NLP -  Exploring BERT
Latest trends in NLP - Exploring BERT
 
NLP State of the Art | BERT
NLP State of the Art | BERTNLP State of the Art | BERT
NLP State of the Art | BERT
 
BERT introduction
BERT introductionBERT introduction
BERT introduction
 
NLP new words
NLP new wordsNLP new words
NLP new words
 
Equivalence of pda, cfg1
Equivalence of pda, cfg1Equivalence of pda, cfg1
Equivalence of pda, cfg1
 
Oop with c++ notes unit 01 introduction
Oop with c++ notes   unit 01 introductionOop with c++ notes   unit 01 introduction
Oop with c++ notes unit 01 introduction
 
Sp imp gtu
Sp imp gtuSp imp gtu
Sp imp gtu
 
Generics
GenericsGenerics
Generics
 
Parts of Speect Tagging
Parts of Speect TaggingParts of Speect Tagging
Parts of Speect Tagging
 

Destacado

Median-udf in mysql : Step By Step Installation And Problem Fixes For Install...
Median-udf in mysql : Step By Step Installation And Problem Fixes For Install...Median-udf in mysql : Step By Step Installation And Problem Fixes For Install...
Median-udf in mysql : Step By Step Installation And Problem Fixes For Install...theGhost_k8
 
2015 Fundraising Series (Part One) - "Building Your Story"
2015 Fundraising Series (Part One) - "Building Your Story" 2015 Fundraising Series (Part One) - "Building Your Story"
2015 Fundraising Series (Part One) - "Building Your Story" Joyce Chuang
 
PHP mysql Aggregate functions
PHP mysql Aggregate functionsPHP mysql Aggregate functions
PHP mysql Aggregate functionsMudasir Syed
 
Aggregate functions
Aggregate functionsAggregate functions
Aggregate functionssinhacp
 
Alfabetizacindigital 130919154801-phpapp02
Alfabetizacindigital 130919154801-phpapp02Alfabetizacindigital 130919154801-phpapp02
Alfabetizacindigital 130919154801-phpapp02JessiMart74
 
Aydın pegasus ucuz uçak bileti telefon
Aydın pegasus ucuz  uçak bileti telefonAydın pegasus ucuz  uçak bileti telefon
Aydın pegasus ucuz uçak bileti telefonhasan ahmet
 
Bartın pegasus ucuz uçak bileti telefon
Bartın pegasus ucuz  uçak bileti telefonBartın pegasus ucuz  uçak bileti telefon
Bartın pegasus ucuz uçak bileti telefonhasan ahmet
 
Historias do Asorey (Semanas da Ciencia)
Historias do Asorey (Semanas da Ciencia)Historias do Asorey (Semanas da Ciencia)
Historias do Asorey (Semanas da Ciencia)iesasorey
 
Ankara pegasus ucuz uçak bileti telefon
Ankara pegasus ucuz  uçak bileti telefonAnkara pegasus ucuz  uçak bileti telefon
Ankara pegasus ucuz uçak bileti telefonhasan ahmet
 
Afyonkarahisar pegasus ucuz uçak bileti telefon
Afyonkarahisar pegasus ucuz  uçak bileti telefonAfyonkarahisar pegasus ucuz  uçak bileti telefon
Afyonkarahisar pegasus ucuz uçak bileti telefonhasan ahmet
 
Doppl development iteration #1
Doppl development   iteration #1Doppl development   iteration #1
Doppl development iteration #1Diego Perini
 
Bursa pegasus ucuz uçak bileti telefon
Bursa pegasus ucuz  uçak bileti telefonBursa pegasus ucuz  uçak bileti telefon
Bursa pegasus ucuz uçak bileti telefonhasan ahmet
 
Disclosure profile
Disclosure profileDisclosure profile
Disclosure profileemily64
 
Bingöl pegasus ucuz uçak bileti telefon
Bingöl pegasus ucuz  uçak bileti telefonBingöl pegasus ucuz  uçak bileti telefon
Bingöl pegasus ucuz uçak bileti telefonhasan ahmet
 
Bolu pegasus ucuz uçak bileti telefon
Bolu pegasus ucuz  uçak bileti telefonBolu pegasus ucuz  uçak bileti telefon
Bolu pegasus ucuz uçak bileti telefonhasan ahmet
 
çOrum pegasus ucuz uçak bileti telefon
çOrum pegasus ucuz  uçak bileti telefonçOrum pegasus ucuz  uçak bileti telefon
çOrum pegasus ucuz uçak bileti telefonhasan ahmet
 

Destacado (20)

Median-udf in mysql : Step By Step Installation And Problem Fixes For Install...
Median-udf in mysql : Step By Step Installation And Problem Fixes For Install...Median-udf in mysql : Step By Step Installation And Problem Fixes For Install...
Median-udf in mysql : Step By Step Installation And Problem Fixes For Install...
 
MySQL Functions
MySQL FunctionsMySQL Functions
MySQL Functions
 
Writing MySQL UDFs
Writing MySQL UDFsWriting MySQL UDFs
Writing MySQL UDFs
 
2015 Fundraising Series (Part One) - "Building Your Story"
2015 Fundraising Series (Part One) - "Building Your Story" 2015 Fundraising Series (Part One) - "Building Your Story"
2015 Fundraising Series (Part One) - "Building Your Story"
 
PHP mysql Aggregate functions
PHP mysql Aggregate functionsPHP mysql Aggregate functions
PHP mysql Aggregate functions
 
Aggregate functions
Aggregate functionsAggregate functions
Aggregate functions
 
Alfabetizacindigital 130919154801-phpapp02
Alfabetizacindigital 130919154801-phpapp02Alfabetizacindigital 130919154801-phpapp02
Alfabetizacindigital 130919154801-phpapp02
 
Aydın pegasus ucuz uçak bileti telefon
Aydın pegasus ucuz  uçak bileti telefonAydın pegasus ucuz  uçak bileti telefon
Aydın pegasus ucuz uçak bileti telefon
 
Bartın pegasus ucuz uçak bileti telefon
Bartın pegasus ucuz  uçak bileti telefonBartın pegasus ucuz  uçak bileti telefon
Bartın pegasus ucuz uçak bileti telefon
 
Historias do Asorey (Semanas da Ciencia)
Historias do Asorey (Semanas da Ciencia)Historias do Asorey (Semanas da Ciencia)
Historias do Asorey (Semanas da Ciencia)
 
Ankara pegasus ucuz uçak bileti telefon
Ankara pegasus ucuz  uçak bileti telefonAnkara pegasus ucuz  uçak bileti telefon
Ankara pegasus ucuz uçak bileti telefon
 
Proyecto de aula III
Proyecto de aula IIIProyecto de aula III
Proyecto de aula III
 
Afyonkarahisar pegasus ucuz uçak bileti telefon
Afyonkarahisar pegasus ucuz  uçak bileti telefonAfyonkarahisar pegasus ucuz  uçak bileti telefon
Afyonkarahisar pegasus ucuz uçak bileti telefon
 
Doppl development iteration #1
Doppl development   iteration #1Doppl development   iteration #1
Doppl development iteration #1
 
Bursa pegasus ucuz uçak bileti telefon
Bursa pegasus ucuz  uçak bileti telefonBursa pegasus ucuz  uçak bileti telefon
Bursa pegasus ucuz uçak bileti telefon
 
Disclosure profile
Disclosure profileDisclosure profile
Disclosure profile
 
Bingöl pegasus ucuz uçak bileti telefon
Bingöl pegasus ucuz  uçak bileti telefonBingöl pegasus ucuz  uçak bileti telefon
Bingöl pegasus ucuz uçak bileti telefon
 
Bolu pegasus ucuz uçak bileti telefon
Bolu pegasus ucuz  uçak bileti telefonBolu pegasus ucuz  uçak bileti telefon
Bolu pegasus ucuz uçak bileti telefon
 
Environmental science
Environmental science Environmental science
Environmental science
 
çOrum pegasus ucuz uçak bileti telefon
çOrum pegasus ucuz  uçak bileti telefonçOrum pegasus ucuz  uçak bileti telefon
çOrum pegasus ucuz uçak bileti telefon
 

Similar a Doppl development iteration #4

Python_Unit_1.pdf
Python_Unit_1.pdfPython_Unit_1.pdf
Python_Unit_1.pdfalaparthi
 
L5 - Data Types, Keywords.pptx
L5 - Data Types, Keywords.pptxL5 - Data Types, Keywords.pptx
L5 - Data Types, Keywords.pptxEloAOgardo
 
L6 - Loops.pptx
L6 - Loops.pptxL6 - Loops.pptx
L6 - Loops.pptxEloAOgardo
 
L6 - Loops.pptx
L6 - Loops.pptxL6 - Loops.pptx
L6 - Loops.pptxEloAOgardo
 
Python - Module 1.ppt
Python - Module 1.pptPython - Module 1.ppt
Python - Module 1.pptjaba kumar
 
Doppl development iteration #5
Doppl development   iteration #5Doppl development   iteration #5
Doppl development iteration #5Diego Perini
 
Introduction to Python for Data Science and Machine Learning
Introduction to Python for Data Science and Machine Learning Introduction to Python for Data Science and Machine Learning
Introduction to Python for Data Science and Machine Learning ParrotAI
 
Doppl development iteration #6
Doppl development   iteration #6Doppl development   iteration #6
Doppl development iteration #6Diego Perini
 
Data Type is a basic classification which identifies.docx
Data Type is a basic classification which identifies.docxData Type is a basic classification which identifies.docx
Data Type is a basic classification which identifies.docxtheodorelove43763
 
Python interview questions and answers
Python interview questions and answersPython interview questions and answers
Python interview questions and answersRojaPriya
 
Python interview questions and answers
Python interview questions and answersPython interview questions and answers
Python interview questions and answerskavinilavuG
 
Introduction to Python Part-1
Introduction to Python Part-1Introduction to Python Part-1
Introduction to Python Part-1Devashish Kumar
 
Introduction To Python.pptx
Introduction To Python.pptxIntroduction To Python.pptx
Introduction To Python.pptxAnum Zehra
 
python full notes data types string and tuple
python full notes data types string and tuplepython full notes data types string and tuple
python full notes data types string and tupleSukhpreetSingh519414
 

Similar a Doppl development iteration #4 (20)

Python_Unit_1.pdf
Python_Unit_1.pdfPython_Unit_1.pdf
Python_Unit_1.pdf
 
L5 - Data Types, Keywords.pptx
L5 - Data Types, Keywords.pptxL5 - Data Types, Keywords.pptx
L5 - Data Types, Keywords.pptx
 
L6 - Loops.pptx
L6 - Loops.pptxL6 - Loops.pptx
L6 - Loops.pptx
 
L6 - Loops.pptx
L6 - Loops.pptxL6 - Loops.pptx
L6 - Loops.pptx
 
Python Keywords
Python KeywordsPython Keywords
Python Keywords
 
Python - Module 1.ppt
Python - Module 1.pptPython - Module 1.ppt
Python - Module 1.ppt
 
Doppl development iteration #5
Doppl development   iteration #5Doppl development   iteration #5
Doppl development iteration #5
 
Introduction to Python for Data Science and Machine Learning
Introduction to Python for Data Science and Machine Learning Introduction to Python for Data Science and Machine Learning
Introduction to Python for Data Science and Machine Learning
 
python and perl
python and perlpython and perl
python and perl
 
UNIT1Lesson 2.pptx
UNIT1Lesson 2.pptxUNIT1Lesson 2.pptx
UNIT1Lesson 2.pptx
 
ForLoops.pptx
ForLoops.pptxForLoops.pptx
ForLoops.pptx
 
Doppl development iteration #6
Doppl development   iteration #6Doppl development   iteration #6
Doppl development iteration #6
 
Python by Rj
Python by RjPython by Rj
Python by Rj
 
Data Type is a basic classification which identifies.docx
Data Type is a basic classification which identifies.docxData Type is a basic classification which identifies.docx
Data Type is a basic classification which identifies.docx
 
Python interview questions and answers
Python interview questions and answersPython interview questions and answers
Python interview questions and answers
 
Python interview questions and answers
Python interview questions and answersPython interview questions and answers
Python interview questions and answers
 
Introduction to Python Part-1
Introduction to Python Part-1Introduction to Python Part-1
Introduction to Python Part-1
 
Introduction To Python.pptx
Introduction To Python.pptxIntroduction To Python.pptx
Introduction To Python.pptx
 
Php
PhpPhp
Php
 
python full notes data types string and tuple
python full notes data types string and tuplepython full notes data types string and tuple
python full notes data types string and tuple
 

Más de Diego Perini

Doppl development iteration #10
Doppl development   iteration #10Doppl development   iteration #10
Doppl development iteration #10Diego Perini
 
Doppl development iteration #8
Doppl development   iteration #8Doppl development   iteration #8
Doppl development iteration #8Diego Perini
 
Doppl development iteration #3
Doppl development   iteration #3Doppl development   iteration #3
Doppl development iteration #3Diego Perini
 
Doppl development iteration #2
Doppl development   iteration #2Doppl development   iteration #2
Doppl development iteration #2Diego Perini
 
Doppl development iteration #9
Doppl development   iteration #9Doppl development   iteration #9
Doppl development iteration #9Diego Perini
 
Doppl Development Introduction
Doppl Development IntroductionDoppl Development Introduction
Doppl Development IntroductionDiego Perini
 

Más de Diego Perini (6)

Doppl development iteration #10
Doppl development   iteration #10Doppl development   iteration #10
Doppl development iteration #10
 
Doppl development iteration #8
Doppl development   iteration #8Doppl development   iteration #8
Doppl development iteration #8
 
Doppl development iteration #3
Doppl development   iteration #3Doppl development   iteration #3
Doppl development iteration #3
 
Doppl development iteration #2
Doppl development   iteration #2Doppl development   iteration #2
Doppl development iteration #2
 
Doppl development iteration #9
Doppl development   iteration #9Doppl development   iteration #9
Doppl development iteration #9
 
Doppl Development Introduction
Doppl Development IntroductionDoppl Development Introduction
Doppl Development Introduction
 

Último

Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 

Último (20)

Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

Doppl development iteration #4

  • 1. DOPPL Data Oriented Parallel Programming Language Development Diary Iteration #4 Covered Concepts: Boolean Type, Boolean Literals, Logic Operators Diego PERINI Department of Computer Engineering Istanbul Technical University, Turkey 2013-07-22 1
  • 2. Abstract This paper stands for Doppl language development iteration #4. In this paper, a new primitive data type for logic operations will be introduced. Common logic operators such as and, or, xor and not are also defined in this iteration. 1. Rationale Like any other high level programming language, Doppl offers a primitive type of bool to execute logic operations in a native manner. A bool can only have values of true or false. Assigning any other value is prohibited to enforce a unified methodology. 2. bool Type, Boolean Literals and Operations Doppl bool is a primitive type like int and string which can easily be used for task members. Bool members are initialized with Null by default like any other primitive type. Boolean types can only store True or False as values (case sensitive), any other assignment is likely to yield a syntax error. Implied typecasting will be explained in the iteration that introduces data traits. Below are logical operators that can be used with boolean members, ordered by precedence descendingly. keyword meaning ! prefix not and logical and nand not(logical and) or logical or nor not(logical or) xor exclusive or Boolean operations can make use of parentheses to manipulate order of execution. 2
  • 3. Code example: #An example task group of 2 tasks task(1) BoolTypes { data a_private_bool = bool shared data a_shared_bool = bool data my_bool = bool #Examples init: { a_private_string = True a_shared_string = False my_bool my_bool my_bool my_bool my_bool my_bool = = = = = = True and False True or False True xor False !True True nand False True nor False #False #True #True #false #True #False my_bool = True and !False nor True and (True xor True) #translates into #((True and !(False)) nor (True and (True xor True))) #((True and True) nor (True and False)) #(True nor False) #!True #False } } It must be noted that Null is not False and boolean operators always yield syntax errors whenever used with Null values. 3. Conclusion Iteration #4 defines a new type called bool which is a simple boolean value of True or False. Common boolean operations of and, nand, or, nor, xor and not can easily be conducted via corresponding operators. Order of precedence is manipulated via regular parentheses. Using Null with boolean operators is forbidden. 3
  • 4. 4. Future Concepts Below are the concepts that are likely to be introduced in next iterations. ● ● ● ● ● ● ● ● ● ● ● ● Arithmetic, relational and binary operators String Concatenation Standard input and output if conditional and trueness State transition operators Primitive Collections and basic collection operators Provision operators Tasks as members Task and data traits Custom data types and defining traits Built-in traits for primitive data types Message passing 5. License CC BY-SA 3.0 http://creativecommons.org/licenses/by-sa/3.0/ 4