首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我需要一些在smalltalk中发送参数的例子

在Smalltalk中,可以使用消息传递的方式发送参数。下面是一些在Smalltalk中发送参数的例子:

  1. 发送整数参数:| num | num := 10. object sendMessageWith: num.
  2. 发送字符串参数:| str | str := 'Hello, World!'. object sendMessageWith: str.
  3. 发送集合参数:| list | list := #(1 2 3 4 5). object sendMessageWith: list.
  4. 发送字典参数:| dict | dict := #{'key1' -> 'value1' . 'key2' -> 'value2'}. object sendMessageWith: dict.
  5. 发送自定义对象参数:| person | person := Person new. person name: 'John'. person age: 30. object sendMessageWith: person.

在这些例子中,object是接收消息的对象,sendMessageWith:是发送消息的方法名,参数可以是任何Smalltalk对象,根据具体的需求进行传递。

请注意,以上示例中的object是一个占位符,代表接收消息的对象。根据实际情况,你需要将其替换为具体的对象或类名。

关于Smalltalk的更多信息,你可以参考腾讯云的产品介绍页面:Smalltalk产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

IM群组接收后端发送消息,需要显示还需要保存在本地,应该怎么处理呢?

情景再现 App内有一个领取红包消息通知,是通过服务端推送过来消息(服务端使用方法如下图) image.png image.png 目前已经知道IMSDK会有收到群内系统推送方法(如下)...image.png TUIKit回调了这个方法后发送了一个通知 image.png 如果您是用了TUIkit的话,您只要注册这个通知即可接受到消息,并调用自己方法 image.png 保存本地并显示消息...现将这条消息保存到本地,我们可以使用一下api来保存消息 /** * 4.8 向群组消息列表添加一条消息 * * 该接口主要用于满足向群组聊天会话插入一些提示性消息需求,比如“您已经退出该群...”,这类消息有展示 * 聊天消息区需求,但并没有发送给其他人必要。...* 所以 insertGroupMessageToLocalStorage() 相当于一个被禁用了网络发送能力 sendMessage() 接口。

1.9K10

Runtime 消息机制

为什么Objective-C里会有消息机制 这就是语言基因问题了Smalltalk,之前一本叫《代码未来》了解到Smalltalk是一门比较古老语言, Smalltalk 中一切皆对象,一切调用都是发消息...Objective-C是C基础上,借鉴 Smalltalk 面向对象与消息机制扩展出来语言,就像Golang语言天生自带并发基因。...发送消息过程 Objective-C,如果向某个对象传递消息,那就会在运行时使用动态绑定(dynamic binding)机制来决定需要调用方法。...这是一个参数个数可变函数,第一参数代表接收者,第二个参数代表选择子(OC函数名),后续参数就是消息(OC函数调用)那些参数 举例来说: id return = [git commit:parameter...(fast map),这样以来这个类一些频繁调用方法会出现在fast map ,不用再去一遍一遍方法列表搜索了。

1K50
  • 影响Scala语言设计因素列表

    它函数式编程处理方式骨子里与以SML,OCaml和F#为代表ML家族语言很接近。许多Scala标准库里面的高阶函数同样也出现在ML或Haskell。...把前缀操作符视为函数特别的思想可以被回溯到Iswim和Smalltalk。另一个重要思想是允许函数式文本(或代码块)作为参数,从而能让库定义控制结构。...Scala也不是第一个集成函数式和面向对象编程,尽管也许在这个方向上它走得最远。其他OOP里集成了函数式编程一些元素包括Ruby,Smalltalk和Python。...Java平台上,Pizza,Nice和Multi-Java都用函数式思想扩展了类Java内核。还有一些接受了对象系统以函数式为主语言;OCaml,F#和PLT-Scheme是其中例子。...这些革新已在近年编程语言会议阐述论文里了。

    1.2K70

    Objective-C笔记

    如上述类: MyClass * my = [[MyClass alloc] init]; Objective-C 2.0里,若创建对象不需要参数,则可直接使用new: MyClass * my =...冒号表明了参数出现。 如果方法没有参数,你可以省略第一个(也是唯一)方法标识关键字后面的冒号。本例,这个方法有两个参数。...这里消息就是方法标识符以及传递给方法参数信息。 发送给对象所有消息都会动态分发,这样有利于实现Objective-C类多态行为。...括号接收消息对象左边,消息及其参数右边。...希望实现转发对象只需用新方法覆盖以上方法来定义其转发行为而无需重写响应方法performv::, 因为后者只是单纯对响应对象发送消息并传递参数

    93840

    界面之下:还原真实MV*模式

    而在四人帮(GoF)设计模式当中并没有把MVC当做是设计模式,而仅仅是把它看成解决问题一些集合。Smalltalk-80 MVC和GoF描述MVC是最经典MVC模式。...经典Smalltalk-80 MVC不需要任何框架支持就可以实现。...(关键) 对比MVC,Controller是不能操作View,View也没有提供相应接口;而在MVP当中,Presenter可以操作View,View需要提供一组对界面操作接口给Presenter...MVP当中,View不依赖Model。这样就可以让View从特定业务场景脱离出来,可以说View可以做到对业务完全无知。它只需要提供一系列接口提供给上层操作。...还可能包含一些领域模型不包含视图状态,例如电子表格程序上需要显示当前排序状态是顺序还是逆序,而这是Domain Model所不包含,但也是需要显示信息。

    61820

    微服务下持久化观念转变

    而且你还需要去写一些代码来保存和加载快照并且能够以足够快速度恢复系统,从而保证你服务质量。过去数据库支持事务性并发能力,现在你也要做一些事情支持并发。...为了保持高可用性,它们运行多个内存镜像副本,这样的话,如果一个死掉,它们可以切换到另一个实例,与此同时还能保持很高事务处理速率。 最古老例子就是Smalltalk开发环境。...大多数开发工具依赖文件系统文本文件,该文件系统根据需要进行编译或解释。然而Smalltalk将所有的源代码和编译方法都保存在镜像。你执行每个命令都存储更改日志。...大部分时间你保存你image(快照),但如有必要,你都可以从稳定base回放更改日志,比如你手滑做了一些愚蠢事情时候。...某些时候,我们需要将事件日志本身从旧格式迁移到新格式。迁移事件日志是个比较麻烦事情,但是从一开始就慢慢演进可能是一个不错选择。不要总是想着拉到重来,演进总是没错

    969100

    编程思想 之「语言导论」

    、基本类型自动装箱、改进循环、枚举类型、格式化 I/O 及可变参数等。...计算机语句世界,第一个面向对象编程语句 Simula-67 就采用了上述面向对象思想,它在程序中使用关键字class来引入新类型,Java 语言同样如此。...Alan Kay(他是 Smalltalk 面向对象编程环境语言发明人之一,也是面向对象编程思想创始人之一,他还是笔记本电脑最早构想者和现代 Windows GUI 最初尝试者)曾总结了 Smalltalk...程序是对象集合,它们通过发生消息来告知彼此所要做事情; 简单点说,程序包含不同对象,对象之间通过调用方法(发送消息)来达到所要实现具体行为。...,而是使用了「后期绑定」概念,即当向对象发送消息时,被调用代码直到运行时才能确定。

    1K190

    一种新设计模式:newtype

    概述 设计模式是在编写代码时各种不同情况下出现模式。本文中,将讨论 Newtype 设计模式。...具体来说,将以 Rust 编程语言为背景来讨论它,以及如何解决 Rust 中使用 Newtype 模式时出现一些问题。...虽然这些模式大部分仍然适用于其他面向对象编程语言,但它们可能需要进行调整才能使它们很好地工作。 Rust 是一门有趣编程语言,因为该语言设计借鉴了面向对象、过程式和函数式编程语言思想。...这意味着有不同模式是有用,现有的模式可能会以一种新方式更好地表达。 在这篇文章将解释一个 Rust 代码中发现有用模式:Newtype 模式。...让我们看看如何将它应用到 person 例子。 你首先要定义 Newtype。设计模式只是一个值,包裹在一个结构

    87330

    MVC演化史

    Classic MVC 大概上世纪七十年代,Xerox PARCTrygve提出了MVC概念,并应用在Smalltalk系统,为了和其它类型MVC加以区分,历史上习惯称之为Classic MVC...但我们前面说过,从依赖关系上看,Model应该完全无视View存在,所以这样味道很坏。 View判断音量临界值,达到后完成相关逻辑处理。...接着看前面的例子,既然Model和View都不适合放背景色变红逻辑,那么我们可以尝试把相关逻辑放在Application Model实现,当用户通过鼠标调整音量大小时,Model触发一个普通事件,Application...View是否有联系,Supervising Controller实现,View可以查询Model,Model状态发生变化的话会通知View,而在Passive View实现,View不可以查询...状态,所以说对Model而言,Controller和View地位是平等,不过Web MVC,Controller变成了中继者,主要工作是协调Model和View,如此看来,Web MVCController

    70220

    编程语言出现都这么随意吗?

    这些语言需求,显然 IPL 不能满足,所以需要设计新语言。1958 年秋,麦卡锡 MIT 成立了人工智能小组,开始着手设计这种新列表处理语言。这最终导致 1960 年,Lisp 诞生。...随着 Fortran 诞生,其他一些语言也开发,这些语言语法格式各不相同,而且和 Fortran 一样,都与运行它们具体计算机关联(比如标示符长度、代码行数限制等)。...Algol 60,发表于 1960 年, Algol 58 基础上做了重大改进:移入块结构、 支持两种子程序参数传递(按值传递和按名传递)、允许递归、支持本地数组(栈上分配数组)。...将命令式编程数据和数据有关函数集成在一起,就形成了面向对象编程对象,而对象类型就是类。将命令式编程主程序调用子程序从属关系,变为面向对象编程对象之间互相发送消息平等关系。...Smalltalk 源于 SIMUAL 67,完善并定义了消息发送,和对象继承关系。 Smalltalk ,所有数据都是对象:消息发送者,消息接受者,消息,消息结果…。对象类型是类。

    1.6K60

    为什么Lisp语言如此先进?(译文)

    事实上,按照大多数公司实际情况,计划五年完成项目,很可能永远都不会完成。 承认,上面的例子太极端。ITA似乎有一批非常聪明黑客,而C语言又是一种很低层次语言。...我们需要写一个函数,它能够生成累加器,即这个函数接受一个参数n,然后返回另一个函数,后者接受参数i,然后返回n增加(increment)了i后值。...^[:i| s := s+i. ] 因为Smalltalk,局部变量(lexical variable)是有效,但是你无法给一个参数赋值,因此不得不设置了一个新变量,接受累加后值。...Perl和Python较量,Python黑客观点似乎是认为Python比Perl更优雅,但是这个例子表明,最终来说,编程能力决定了优雅。...Python例子,这样处理方法已经开始出现了,我们实际上就是自己写代码,模拟出编译器实现局部变量功能。 这种实践不仅很普遍,而且已经制度化了。

    1.2K60

    Python 元类设计起源自哪里?

    一个元老级 Python 核心开发者曾建议我们( 点击阅读),应该广泛学习其它编程语言优秀特性,从而提升 Python 相关领域能力。关于元编程方面,他建议是学习 Hy 和 Ruby。...[豆瓣有收录] [亚马逊这个价格真的吓尿了!] 但即便是 Python 最初设计(1990 年,发布于 1991 年),类型(type)本身就是一个对象。...当时Smalltalk 只有模糊了解;当我后来读到它元类设计时,感到很惊讶,因为它与 Python 或 Ruby 元类有很大不同!... Adele Goldberg 和其他人一本书中读到过,好像是《Smalltalk-80: The Language and its Implementation》。...这些译文,竟然一直从未阅读过! 该译者也有公众号,好奇翻看了一些文章,发现不少阅读量只有 10 几个!看来那位译者是没有怎么花心思运营啊,纯粹是当做了一种学习兴趣,默默做事,不求掌声。

    40620

    开发者测试进阶

    ——网易云课堂《开发者测试》课程笔记 这节,给大家介绍大名鼎鼎xUnit系列和我们测试平台慕测。 xUnit几乎成为今天最为著名面向开发者测试框架,它是开源自动化测试框架。...最初它是面向Smalltalk及Sunit。我们知道,Smalltalk是一个非常著名面向对象编程语言。Sunit是1998年由Kent Beck所开发。...同时,他提供.fail方法来进行失败一些分析。我们还有一些等式判断等等都在断言里面提供,对应同时提供一些对象判别。 ? 参数化,几乎是在所有的自动化测试中最为普遍一个功能。...以防止程序运行或者测试执行时候过长,进入死循环等等。 我们进一步来讲解开发者测试所需要考虑内容。主要包括,异常和Mock处理。 ?...异常是现代编程语言为了提高代码质量和健壮性而提供一种机制,来处理代码正常范围以内意外。通常这一部分也需要测试。传统测试很难对异常部分message进行判断。

    71520

    Java微信公众平台开发(十一)--微信JSSDKConfig配置 (一)微信公众平台绑定安全域名(二)后端接口实现JS-SDK配置需要参数 (三)页面实现JS-SDkcon

    JSSDK曾经引爆前端以及后端工程师,其魔性力量毋庸置疑,我们技术眼里它实现原理和根本是不能够被改变,这篇文章就不对其js实现做任何评价和解说了(因为也不是很懂,哈哈),这里要说是它...JSSDK使用步骤: 步骤一:微信公众平台绑定安全域名 步骤二:后端接口实现JS-SDK配置需要参数 步骤三:页面实现JS-SDkconfig注入配置,并实现对成功和失败处理...(一)微信公众平台绑定安全域名 先登录微信公众平台进入“公众号设置”“功能设置”里填写“JS接口安全域名”(如下图),如果需要使用支付类接口,需要确保支付目录在支付安全域名下,否则将无法完成支付!...(三)页面实现JS-SDkconfig注入配置,并实现对成功和失败处理 这里web目录下新建jssdkconfig.jsp,jsp页面用ajax方式获取并进行配置,并开启debug模式,打开之后就可以看到配置是否成功提示...②么点击Jssdk时候,先按f12 打开network视图窗口。,然后再点击,效果图如下: ? ?

    3.1K62

    JVM多态是如何实现

    这道面试题在好一些互联网公司,尤其是一二线,问到概率非常大,建议小伙伴们把这篇文章吃透。...多态理论第一次有了具体实现是第一款面向对象编程语言中,这个语言可能很多人没听过:smalltalk。此后出现只要具备OOP机制语言,都或多或少模仿或借鉴了前面语言OOP实现机制。...C++有没有模仿或借鉴smalltalk不敢说,没特别研究过smalltalk。但是敢说,Java多态是几乎百分百模仿C++多态实现,不过做了一些细化。...C++只有直接调用、间接调用,而JVM通过不同invoke指令来实现不同属性方法调用,这点后文会讲到。...查了一些资料,得到答案是:为额外运算元预留空间。子牙老师表示这个字都认识,但是它组合在一起表达意思真不懂,是不是我太菜了。哎,还是太菜了。 有些小伙伴可能就想:答到这个份上才七八十分?

    51060

    Scala简介:面向对象和函数式编程组合

    于是对象语言伸缩性方面起了很大作用:构造小程序和大程序都可以应用同样技术。 尽管很长一段时间面向对象编程已经成为主流,然而鲜有语言能跟从Smalltalk推动这种构造原则去转化为逻辑结论。...这看上去有点儿像多重继承,但在细节上是有差异。与类不同,特质可以可以把一些功能加入到还未定义超类。这使得特质比类更具有“可加性”。...你可以把函数当作参数传递给其他函数,当作结果从函数返回或保存在变量里。你也可以函数里定义其他函数,就好像在函数里定义整数一样。...这种函数泛化提供了很强表现力,常能产生非常易读和清晰程序。而且常在伸展性上扮演重要角色。例如,之前在行动类例子里演示receive构造就是一个把函数当作参数调用方法。...字串字符可以被独立改变。举例来说你可以同一个字串对象里把分号改成句号。而另一方面,Java和Scala里,字串是一种数学意义上字符序列。

    1.2K60

    开源项目——『看知乎』iOS 版

    目前已经完成了大部分内容,花时间不长,后续还会添加一些功能,然后做一些优化,再加点注释。...Global 目录自己封装几个简单类库和一些常量。 几个 Tips 用 Storyboard 快速设置 layer 层属性 ?...View 和 Model 之间数据绑定,可以 View 设置一个以 Model 为参数方法,Controller 只要调用这个方法即可,具体绑定逻辑写在 View 。...View 响应,如果是 UI 相关,譬如改变颜色位置大小等等,都可以放到 View 自己搞定,但是一些数据相关,或者需要跟其他 View 协调,可以通过代理让 Controller 去处理。...,至于处理响应例子之前已经举过了,就是模仿简书用户页面里用到 UserMenu 例子,点击菜单项后变色指示器滑动等操作都在 UserMenu 内部完成,而要跟 TableView 交互部分则放到

    1.2K50

    Yet Another OOP : 基于原型而非基于类

    举个例子,钥匙开锁,这里钥匙和锁类型理论上都能影响到开锁流程,但是c++绑定代码时只会看一个类型。...基于原型系统构造对象有两种方法,通过复制(clone)已有的对象,或者通过扩展空对象创建。很多框架例如Vue都会通过扩展空对象方式自己重写一套原型链。...例如,JavaScript,默认顶级对象是Object,它自身具备一些通用属性和方法,被原型链上所有对象继承。对象也可以重写继承来属性(实际上,就相当于对象内部有个指针指向原型对象)。...某些语言例如wikiKevo,则是通过副本方式,直接拷贝原型所有属性,修改原型对象不会影响到当前对象,同时也不需要遍历整个链来查找属性。...但是修改原型对象不会影响到当前对象传播方面也有坏处,有时候我们就想影响,比如修改函数实现,因此需要其他传播机制;同时,这也是经典时空交换,空间占用更大了。

    35430
    领券