Dynamically Composing Collection Operations through Collection PromisesMarcus Denker
Dynamically Composing Collection Operations through Collection Promises.
Juan Pablo Sandoval Alcocer, Marcus Denker,
Alexandre Bergel, Yasett Acuran
Presented at IWST 2016
ESUG 2014, Cambridge
Wed, August 20, 11:00am – 11:45am
Video:
Part1: https://www.youtube.com/watch?v=_Mv7SX-8Vlk
Part2: https://www.youtube.com/watch?v=qdZq2IZBm4k
Description
Abstract: In this talk we will present the advances and new features in Pharo 3.0. We will present the current work on Pharo 4.0 and beyond.
Smalltalk provides many reflective features, yet behavioral reflection is limited. Pharo provides reflective features that go beyond standard Smalltalk.
The lecture will present Reflectivity, a framework for fine-grained behavioral reflection. It allows to annotate the AST with MetaLinks, alowing meta-objects to change behavior down to a single operation.
After a overview of the framework, we show how MetaLinks are used in Pharo to realize IDE tools such as BreakPoints and Code Coverage.
Dynamically Composing Collection Operations through Collection PromisesMarcus Denker
Dynamically Composing Collection Operations through Collection Promises.
Juan Pablo Sandoval Alcocer, Marcus Denker,
Alexandre Bergel, Yasett Acuran
Presented at IWST 2016
ESUG 2014, Cambridge
Wed, August 20, 11:00am – 11:45am
Video:
Part1: https://www.youtube.com/watch?v=_Mv7SX-8Vlk
Part2: https://www.youtube.com/watch?v=qdZq2IZBm4k
Description
Abstract: In this talk we will present the advances and new features in Pharo 3.0. We will present the current work on Pharo 4.0 and beyond.
Smalltalk provides many reflective features, yet behavioral reflection is limited. Pharo provides reflective features that go beyond standard Smalltalk.
The lecture will present Reflectivity, a framework for fine-grained behavioral reflection. It allows to annotate the AST with MetaLinks, alowing meta-objects to change behavior down to a single operation.
After a overview of the framework, we show how MetaLinks are used in Pharo to realize IDE tools such as BreakPoints and Code Coverage.
New features in C# 8 including nullable reference types, async streams, switch expressions, ranges, default interface members, enhanced pattern matching
New features in C# 8 including nullable reference types, async streams, switch expressions, ranges, default interface members, enhanced pattern matching
Trabajo sobre la energía eléctrica. Tiene 14 diapositivas, y en la final contiene algunas de las webs que hemos utilizado para realizar este trabajo.
Realizado por: Bera (50%) y Carmen (50%)
Colegio San José NiñoJesús 3ºB TECNOLOGÍA.
Planificación y Control de MantenimientoEnrique Añez
El proceso de planeación comprende todas las funciones relacionadas con la preparación de la orden de trabajo,
lista de materiales, la requisición de compras, los planos y dibujos necesarios,
la hoja de planeación de la mano de obra, los estándares de tiempo y todos los datos necesarios antes de programar y liberar la orden de trabajo.
La primera guía de viaje con hashtags para Instagram con la que el viajero podrá aumentar su popularidad hasta convertirse en todo un influencer. Destino: Tailandia.
Behavioral Reflection in Pharo
Tue, July 14, 11:00am – 11:30am
First Name: Marcus
Last Name: Denker
Abstract:
In this talk I will present Reflectivity, a framework for behavioral
reflection. Reflectivity was implemented some years ago as a research
prototype but now has been re-implemented in Pharo5 in a practically usable
way.
This talk will present the ideas behind Reflectivity and show how to use
by presenting examples. I will explain the implementation strategy used
and discuss future improvements.
Video: https://www.youtube.com/watch?v=Ik539CtjtTI
Updated version of the Lecture. VUB Brussels, Ocotber 2018
Smalltalk provides many reflective features, yet behavioral reflection is limited. Pharo provides reflective features that go beyond standard Smalltalk.
The lecture will present Reflectivity, a framework for fine-grained behavioral reflection. It allows to annotate the AST with MetaLinks, alowing meta-objects to change behavior down to a single operation.
After a overview of the framework, we show how MetaLinks are used in Pharo to realize IDE tools such as BreakPoints and Code Coverage.
Spring Day | Spring and Scala | Eberhard WolffJAX London
2011-10-31 | 09:45 AM - 10:30 AM
Spring is widely used in the Java world - but does it make any sense to combine it with Scala? This talk gives an answer and shows how and why Spring is useful in the Scala world. All areas of Spring such as Dependency Injection, Aspect-Oriented Programming and the Portable Service Abstraction as well as Spring MVC are covered.
First class Variables in Pharo
First Name: Marcus
Last Name: Denker
Type: Talk
Video 1: https://www.youtube.com/watch?v=hEWKV9eWAGY
Video 2: https://www.youtube.com/watch?v=fWo1V_C0cu8
Abstract:
In this talk I will present the first class variables in Pharo:
With Slots, Class, and Global variables, we now model variables
as objects. These mete-objects provide a new reflective API for
variables and in addition, and allow the programmer to introduce
new kinds of variables.
This talk will present the ideas behind and show how to use first class
variables by presenting examples. It will present how variable meta
objects simplify reflecting on variables in combination with Reflectivity.
Bio:
Marcus Denker is a permanent researcher at INRIA Lille - Nord Europe. Before,
he was a postdoc at the PLEIAD lab/DCC University of Chile and the Software
Composition Group, University of Bern. His research focuses on reflection
and meta-programming for dynamic languages. He is an active participant
in the Squeak and Pharo open source communities for many years and the
co-founder of 2Denker/Cologne/Germany. Marcus received a PhD in Computer
Science from the University of Bern/Switzerland in 2008 and a Dipl.-Inform.
(MSc) from the University of Karlsruhe/Germany in 2004.
Salesforce is built on the Lightning Platform. This session will provide you with the same training that Salesforce engineers receive during on-boarding. We are bringing this training to you in a two part series. Part 1 will provide detailed information about Component Definition including component-based architecture, component structure, component implementation and key components.
Roundup of what is on the web at regarding Rails 3 as of Easter 2010.
Includes outline of significant changes to Rais in Rails 3 plus how you might set about upgrading an existing app.
Acknowledges and links to to some amazing resources already elsewhere on the web.
A beginner's guide to annotation processing.
In this talk that I gave at Droidcon Tel Aviv in 2016, I walk you through the process of building a custom annotation processor which mimics some of the behavior you may be familiar with from the popular Android library: Butter Knife.
Similar to Reflection in Pharo: Beyond Smalltak (20)
Topic: Contributing to Pharo 7
Youtube: https://www.youtube.com/watch?v=VW7XrFjnbyw
We will show:
- How to submit issue tracker entries to the Pharo Issue Tracker
- How to do a Pull Request if you want to do a fix or enhancment
- How to review and comment other peoples fixes.
ESUG 2014, Cambridge.
Thu, August 21, 2:00pm – 2:30pm
Video Part 1: https://www.youtube.com/watch?v=Vcoy5gwUvOA
Video Part 2: https://www.youtube.com/watch?v=5LrH9r4FNzY
Abstract: This will a rather unusual talk for ESUG. The theme is not Smalltalk directly, but instead I discuss how progress and inventing new things fits with incremental, reflective nature of Smalltalk.
People often argue that progress is only possible when you throw everything away and start from scratch. In this talk I will argue that this thinking is a trap and the only way for progress in practice is to take an incremental approach of constantly improving and therefore evolving the imperfect system you already have.
I will show how the idea of creating feedback loops of improvement actually lead to non-linear growth and how this process of reflective constant improvement fits with the Smalltalk philosophy of incrementally and dynamically changing a running system.
Do you want Software for your Business? Visit Deuglo
Deuglo has top Software Developers in India. They are experts in software development and help design and create custom Software solutions.
Deuglo follows seven steps methods for delivering their services to their customers. They called it the Software development life cycle process (SDLC).
Requirement — Collecting the Requirements is the first Phase in the SSLC process.
Feasibility Study — after completing the requirement process they move to the design phase.
Design — in this phase, they start designing the software.
Coding — when designing is completed, the developers start coding for the software.
Testing — in this phase when the coding of the software is done the testing team will start testing.
Installation — after completion of testing, the application opens to the live server and launches!
Maintenance — after completing the software development, customers start using the software.
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Łukasz Chruściel
No one wants their application to drag like a car stuck in the slow lane! Yet it’s all too common to encounter bumpy, pothole-filled solutions that slow the speed of any application. Symfony apps are not an exception.
In this talk, I will take you for a spin around the performance racetrack. We’ll explore common pitfalls - those hidden potholes on your application that can cause unexpected slowdowns. Learn how to spot these performance bumps early, and more importantly, how to navigate around them to keep your application running at top speed.
We will focus in particular on tuning your engine at the application level, making the right adjustments to ensure that your system responds like a well-oiled, high-performance race car.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
Atelier - Innover avec l’IA Générative et les graphes de connaissancesNeo4j
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Allez au-delà du battage médiatique autour de l’IA et découvrez des techniques pratiques pour utiliser l’IA de manière responsable à travers les données de votre organisation. Explorez comment utiliser les graphes de connaissances pour augmenter la précision, la transparence et la capacité d’explication dans les systèmes d’IA générative. Vous partirez avec une expérience pratique combinant les relations entre les données et les LLM pour apporter du contexte spécifique à votre domaine et améliorer votre raisonnement.
Amenez votre ordinateur portable et nous vous guiderons sur la mise en place de votre propre pile d’IA générative, en vous fournissant des exemples pratiques et codés pour démarrer en quelques minutes.
GraphSummit Paris - The art of the possible with Graph TechnologyNeo4j
Sudhir Hasbe, Chief Product Officer, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteGoogle
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-pilot-review/
AI Pilot Review: Key Features
✅Deploy AI expert bots in Any Niche With Just A Click
✅With one keyword, generate complete funnels, websites, landing pages, and more.
✅More than 85 AI features are included in the AI pilot.
✅No setup or configuration; use your voice (like Siri) to do whatever you want.
✅You Can Use AI Pilot To Create your version of AI Pilot And Charge People For It…
✅ZERO Manual Work With AI Pilot. Never write, Design, Or Code Again.
✅ZERO Limits On Features Or Usages
✅Use Our AI-powered Traffic To Get Hundreds Of Customers
✅No Complicated Setup: Get Up And Running In 2 Minutes
✅99.99% Up-Time Guaranteed
✅30 Days Money-Back Guarantee
✅ZERO Upfront Cost
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
Takashi Kobayashi and Hironori Washizaki, "SWEBOK Guide and Future of SE Education," First International Symposium on the Future of Software Engineering (FUSE), June 3-6, 2024, Okinawa, Japan
Zoom is a comprehensive platform designed to connect individuals and teams efficiently. With its user-friendly interface and powerful features, Zoom has become a go-to solution for virtual communication and collaboration. It offers a range of tools, including virtual meetings, team chat, VoIP phone systems, online whiteboards, and AI companions, to streamline workflows and enhance productivity.
11. DEMO
(OrderedCollection>>#do:) ast.
[ 1 + 2 ] sourceNode == thisContext method ast blockNodes first
• ASTCache: as twice, get the same answer
(flushed on image save for now)
13. Opal Compiler
• Uses RB AST
• Based on Visitors
Text AST
AST
+vars
IR CM
Parser Semantic
Analysis
AST Translator+
IRBuilder
BytecodeBuilder+
Encoder
14. Opal: API
• All staged are Pluggable
• e.g Semantic Analyzer or Code Generator can
be changed.
• compiler options
15. Opal: Bytecode editing
• IR can be used to manipulate methods on a
bytecode level
Text AST
AST
+vars
IR CM
Parser Semantic
Analysis
AST Translator+
IRBuilder
BytecodeBuilder+
Encoder
37. Reifications
• Every operation has data that it works on
• Send: #arguments, #receiver, #selector
• Assignment: #newValue, #name
• All: #node, #object, #context
38. Link: arguments
what to pass to the meta?
link := MetaLink new
…..
arguments: #(name newValue)
40. Virtual meta
• Reifications can be the meta object
link := MetaLink new
metaObject: #receiver;
selector: #perform:withArguments:;
arguments: #(selector arguments).
41. Statement Coverage
link := MetaLink new
metaObject: #node;
selector: #tagExecuted.
“set this link on all the AST nodes"
(ReflectivityExamples>>#exampleMethod) ast
nodesDo: [:node | node link: link].
46. Globals/ClassVariables
• We are close: bindings are associations
• Add sublass “LiteralVariable”
• Sublasses GlobalVariable, ClassVariable
• Enhance API
48. Globals: Reflective APi
global := SmalltalkImage classVariableNamed:
#CompilerClass
global read
global write: someObject
+ helper methods + compatibility methods
49. Everything is an object?
• Point instanceVariables
• 5@3 instVarNamed: ‘x’
• 5@3 instVarNamed: ‘y’ put: 6